Pandac Store - Plant E-Commerce Platform
Educational full-stack e-commerce application demonstrating React 19, Spring Boot 3.5, MySQL, Nginx reverse proxy, JWT authentication, and payment integration.

π§ Overview
A full-stack e-commerce platform demonstrating modern web development: React frontend, Spring Boot backend API, database migrations, Stripe payment processing, JWT authentication, and Nginx reverse proxy.
Pandac Store is an educational project built with React 19, Spring Boot 3.5, MySQL, and Docker. The application includes product browsing, shopping cart, checkout flow, user authentication, and admin dashboard.
Topics covered:
- ποΈ Frontend β React 19 with Vite, Tailwind CSS, Redux Toolkit
- π Authentication β JWT tokens with role-based access control
- π³ Payment Integration β Stripe Elements and API
- π― Architecture β Nginx reverse proxy, centralized API configuration
- π Deployment β Docker Compose with multiple services
π Key Features
- Modern React Frontend β React 19 with Vite, Tailwind CSS, and Redux Toolkit
- Robust Spring Boot Backend β Java 21, Spring Security, JPA/Hibernate
- Stripe Payment Processing β Secure checkout with Stripe Elements
- JWT Authentication β Token-based auth with role-based permissions
- Nginx Reverse Proxy β Single entry point, CORS handling, static serving
- Database Migrations β Flyway for version-controlled schema changes
- Admin Dashboard β Product, order, user, and discount management
- Responsive Design β Mobile-first approach with Tailwind CSS
βοΈ How It Works
- Configure β Update
.envwith your Stripe API keys - Start β
docker-compose up -d - Access β
http://localhost
π Topics Covered
- π οΈ Full-Stack Architecture β Frontend-backend communication, reverse proxy setup
- π Spring Boot β REST APIs, JPA/Hibernate, Spring Security, Flyway migrations
- π React β Hooks, Redux Toolkit, React Router, API integration
- π Features β Shopping cart, checkout flow, admin dashboard, order management
- π‘ Docker β Multi-service setup with Nginx, MySQL, and application containers
π οΈ What’s Inside
Customer Features
- Product Catalog β Browse, search, filter plants and gardening products
- Shopping Cart β Smart cart with discount code support
- Secure Checkout β Stripe integration for safe payments
- User Profiles β Authentication, order history, profile management
- Order Tracking β Real-time order status and history
Admin Features
- Product Management β Full CRUD operations for inventory
- Order Administration β Process and track customer orders
- User Management β Manage customers and permissions
- Discount Codes β Create and manage promotional codes
- Sales Analytics β Business insights and reporting
Technical Features
- Nginx Reverse Proxy β Single entry point, CORS-free architecture
- Centralized API Config β
/src/config/api.jsas single source of truth - Responsive Design β Mobile-first with Tailwind CSS
- JWT Authentication β Secure session management
- Database Migrations β Flyway version control
- File Upload β CDN integration for optimized images
- Health Monitoring β Container health checks
- Comprehensive Error Handling β User-friendly error management
π¬ Quick Start
git clone https://github.com/pandaind/pandac-store.git
cd pandac-store
cp .env.example .env # Add your Stripe keys
docker-compose up -d
Access at http://localhost
π Documentation
See the GitHub repository for detailed guides on Docker setup, Nginx configuration, and API setup
π§ Potential Extensions
Areas for experimentation:
- Add new product categories or UI components
- Implement additional API endpoints
- Add OAuth providers or modify authentication
- Create new database entities with Flyway migrations
- Write unit tests for React components or Spring services
- Set up CI/CD pipelines
π€ Contributing
This is a learning project. You can:
- Study how React components interact with Spring Boot APIs
- Fork and experiment with new features
- Add documentation or educational comments
- Submit improvements via pull requests