E-commerce project developed using Spring Boot and React.js.
An actual version of build is deployed on AWS:
http://perfumesweb.tk
Login: [email protected]
Password: admin
- Back-end: Spring (Boot, Data, Security), JPA / Hibernate, PostgreSQL, JUnit, Mockito
- Front-end: TypeScript, React.js, Redux, Jest, Bootstrap, CSS
- Security: JWT, OAuth2 Google, Facebook, Github
- REST API, GraphQL API
- AWS: EC2, S3, PostgreSQL RDS
- Server Build: Maven
- Client Build: npm, yarn, webpack
- Authentication with JWT and Email validation.
- Authentication with Google, Facebook or Github
- Customers can search for the product according to the specified criteria.
- Customers can add and delete products from the shopping cart.
- Customers can order the products in the shopping cart.
- Customers can change their password and view their orders.
- Admin can add or modify a product.
- Admin can change the data of any user.
- Admin can view orders of all users.
- Install maven: link
- Install Java 8: link
- Install Intellij IDEA Ultimate: link
- Install Postgresql: link
- Open pgAdmin and create a new DB (name: perfume and perfumetest) in Postgresql: link
- Add Postgresql properties to the application.properties file: link
- Add Lombok and GraphQL plugins to the Intellij IDEA (File/Settings/Plugins)
- Register new AWS account: link
- Create new S3 bucket: link
- Change access from private to public in S3 bucket
- Add public access policy to S3 bucket (!!!important!!! see:
doc,
github examle or
my example)
- Get AWS keys: link and add to the application.properties file: link
- Register in gmail
- Configure reCAPTCHA: link, guide, video guide (RUS)
- Add reCAPTCHA key to the application.properties file: link and to link
- Add gmail account and password to the application.properties file: link
- Go to link (important) and change to: โAllow less secure apps: ONโ
- Configure OAuth2: link, guide, video guide (RUS)
- Add OAuth2 properties to the application.properties file: link
- Install node.js and npm: link
- Now you can run EcommerceApplication (port 8080) and open terminal in client directory and type: npm start
- Navigate to http://localhost:3000
http://ec2-3-122-228-86.eu-central-1.compute.amazonaws.com:8080/swagger-ui.html
Or show local:
http://localhost:8080/swagger-ui.html
Menu page |
Product page |
|
|
Email template |
List of users |
|
|
List of orders |
User order page |
|
|
User profile page |
Add perfume page |
|
|
Edit perfume list |
Edit perfume page |
|
|