Skip to content

A fully functional, real-world ecommerce backend built with Spring Boot. It includes product, category and brand management, user authentication, order processing, shopping cart, wishlist, and admin panel support — designed with a clean architecture using REST APIs, JPA, Spring Security, and JWT.

Notifications You must be signed in to change notification settings

SahilWeb-lab/MyStore

Repository files navigation

🛒 E-Commerce REST API (Spring Boot)

A real-world, production-ready eCommerce backend built using Spring Boot, designed to power web and mobile frontends.


📦 Features

🧑 User Module

  • User registration & login (JWT-based authentication)
  • Role-based access (USER, ADMIN)
  • Profile management
  • Email verification
  • Password reset

🛍️ Product Module

  • Product CRUD operations (Admin only)
  • Product listing & filtering
  • Product categories
  • Product image support

🏷️ Category Module

  • Category CRUD (Admin)
  • Category listing & filtering

🏬 Brand Module

  • Brand CRUD (Admin)
  • Brand listing & filtering

🛒 Cart & Wishlist

  • Add/remove products to cart
  • Modify item quantities
  • Wishlist management

💰 Checkout & Orders

  • Address management
  • Order placement & order history
  • Order tracking & status updates
  • Cancel order functionality

🧑‍💻 Admin Panel

  • Manage products, users, categories, and brands
  • View and manage all orders
  • Activate/deactivate user accounts
  • Dashboard metrics (sales, users, inventory)
  • Update order statuses

🔐 Security

  • JWT-based authentication
  • Spring Security with role-based access
  • CORS enabled for frontend integration

🚀 Tech Stack

Layer Technology
Framework Spring Boot v3.5.0
Language Java 17
Database MySQL with Spring Data JPA
API Documentation SpringDoc OpenAPI (Swagger UI)
Security Spring Security + JWT
Caching Spring Boot Cache
Dependency Mgmt Maven
Email Spring Boot Mail
Object Mapping ModelMapper
Dev Tools Lombok, Devtools

📁 Project Structure


  src/
├── main/
│ ├── java/com/product/
│ │ ├── config/
│ │ ├── controller/
│ │ ├── dto/
│ │ ├── endpoints/
│ │ ├── enums/
│ │ ├── exception/
│ │ ├── filter/
│ │ ├── genricResponse/
│ │ ├── model/
│ │ ├── page/response/
│ │ ├── repository/
│ │ ├── routes/
│ │ ├── security/
│ │ ├── service/
│ │ ├── service/impl/
│ │ ├── util/
│ │ ├── validation/
│ │ └── EcommerceApplication.java
│ └── resources/
│ ├── application.properties
│ └── static/
└── test/

📘 API Documentation

The complete API is documented using Swagger UI:


👤 Author

Sahil Kumar Mandal


🛠️ Installation & Run

# Clone the repository
git clone https://github.com/SahilWeb-lab/MyStore.git
cd MyStore

# Build and run
./mvnw spring-boot:run

        </plugins>
    </build>
</project>

About

A fully functional, real-world ecommerce backend built with Spring Boot. It includes product, category and brand management, user authentication, order processing, shopping cart, wishlist, and admin panel support — designed with a clean architecture using REST APIs, JPA, Spring Security, and JWT.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published