A premium luxury bag website built with Spring Boot 3 and Spring Security 6.
-
Password Encryption
User passwords are stored securely in the database using BCrypt encryption. -
Authentication
Spring Security 6 is used to handle authentication and user authorization. -
Create Product Feature
Admins can create products atlocalhost:8081/product/create
.
-
Shop Feature
A shopping page where all products are listed atlocalhost:8081/shop
.
-
Cart Feature
Users can view and manage their cart atlocalhost:8081/cart
.
-
MongoDB Integration
The application is connected to a MongoDB database to store user, product, and order information. -
Logout Feature
Users can log out of the system. Once logged out, they are redirected to the login page.
- Filter Products: Ability to filter products by popularity, newest, etc.
- Account Details: User account management and profile details.
- Payment Gateway: Integration with a payment gateway for transactions.
- OAuth2 Login: GitHub and Google OAuth2 login functionality for easier authentication.
- Java 21 used here
- Spring Boot 3.x setup
- MongoDB running locally or a MongoDB Atlas cluster
- Node.js and npm (for front-end dependencies)
-
Clone the repository:
git clone https://github.com/athrocks/Luxury-Bag-website.git cd Luxury-Bag-website
-
Set up MongoDB:
Make sure MongoDB is running locally or configure your MongoDB Atlas connection.
Update application.properties with the correct MongoDB connection URI. -
Build and Run the Spring Boot application:
./mvnw spring-boot:run
-
Install front-end dependencies (If applicable): Navigate to the front-end folder where package.json is located (if you're using npm for front-end management):
npm install npm run start
-
Access the application:
Open a browser and go to http://localhost:8081/ to access the website. -
Log in or register:
Register a new account or log in with an existing one to start using the features.