A production-ready e-commerce platform built with Next.js 14, TypeScript, MongoDB, and Tailwind CSS. Designed for selling school books, art supplies, and stationery products in India.
- Complete Setup Guide - Full setup and testing guide
- Quick Start - Quick start for categories
- Deployment Checklist - Pre-deployment checklist
- Features Summary - Complete features overview
- Search Feature - Product search documentation
- Category Management - Dynamic categories guide
- Admin Features - Admin panel documentation
- Final Summary - Project completion summary
- Implementation Summary - Technical implementation
- Search Implementation - Search feature details
# Install dependencies
npm install
# Seed default categories
npm run seed:categories
# Seed sample products
npm run seed
# Start development server
npm run dev- Storefront: http://localhost:3000
- Admin Panel: http://localhost:3000/admin
- Products: http://localhost:3000/products
- Email: admin@radhestationery.com
- Password: (Set during signup)
β Browse products with dynamic categories β Search products by name, description, tags β Filter by category and price range β Sort by newest, price β Add to cart and checkout β Multiple payment methods (Razorpay, COD) β User profile with address management β Order tracking and delivery status β Product reviews and ratings β Responsive design (mobile-friendly)
β Dashboard with key statistics β Manage unlimited categories β Product management (CRUD) β Order management β Delivery tracking β Invoice management β User management β Review moderation β Store settings
- Framework: Next.js 14 (App Router)
- Language: TypeScript
- Database: MongoDB with Mongoose
- Authentication: NextAuth.js
- Styling: Tailwind CSS
- State Management: Zustand
- Validation: Zod
- Payment: Razorpay
- File Storage: Cloudinary
- Password Hashing: bcryptjs
radhe-stationery/
βββ app/ # Next.js app directory
β βββ admin/ # Admin panel
β βββ account/ # User account pages
β βββ auth/ # Authentication pages
β βββ products/ # Product pages
β βββ checkout/ # Checkout page
β βββ cart/ # Cart page
β βββ api/ # API routes
β βββ page.tsx # Homepage
βββ components/ # React components
β βββ admin/ # Admin components
β βββ layout/ # Layout components
β βββ products/ # Product components
β βββ ui/ # UI components
βββ lib/ # Utilities & helpers
β βββ db/ # Database
β βββ auth/ # Authentication
β βββ store/ # State management
β βββ validations/ # Input validation
βββ scripts/ # Utility scripts
β βββ seed.js # Seed products
β βββ seed-categories.js # Seed categories
βββ docs/ # Documentation
βββ COMPLETE_SETUP_GUIDE.md
βββ FEATURES_SUMMARY.md
βββ SEARCH_FEATURE.md
βββ ... (10+ more docs)
- β Password hashing (bcryptjs)
- β JWT token authentication
- β NextAuth.js security
- β Admin role verification
- β Protected API routes
- β Input validation (Zod)
- β CSRF protection
- β Secure session management
- β Environment variable protection
- β Soft delete (data preservation)
- Email, password, name, phone
- Role (user/admin)
- Multiple addresses
- Timestamps
- Name, slug, description
- Category (dynamic)
- Price, discount price
- Images array
- Stock, tags
- Rating, review count
- Active status
- Name, slug
- Description, icon
- Active status
- User reference
- Items array
- Shipping details
- Payment info
- Order status
- Amounts
- Order reference
- Invoice number
- Shipping details
- Payment status
- Total amount
- Order reference
- Tracking number
- Status tracking
- Estimated/actual delivery dates
- Product reference
- User reference (or guest)
- Rating (1-5)
- Title, comment
- Approval status
GET /api/products- List products with searchGET /api/products/[slug]- Product detailsGET /api/products/[slug]/reviews- Product reviewsPOST /api/products/[slug]/reviews- Add review
GET /api/user/addresses- Get addressesPOST /api/user/addresses- Add addressPATCH /api/user/addresses/[id]- Update addressDELETE /api/user/addresses/[id]- Delete addressGET /api/orders- User orders
GET /api/admin/products- List productsPOST /api/admin/products- Create productGET /api/admin/categories- List categoriesPOST /api/admin/categories- Create categoryGET /api/admin/orders- List ordersGET /api/admin/delivery- List deliveriesGET /api/admin/invoices- List invoicesGET /api/admin/users- List usersGET /api/admin/reviews- List reviewsGET /api/admin/settings- Get settings
# Database
MONGODB_URI=mongodb://localhost:27017/radhe-stationery
# NextAuth
NEXTAUTH_SECRET=your-super-secret-key-min-32-characters
NEXTAUTH_URL=http://localhost:3000
# Razorpay
NEXT_PUBLIC_RAZORPAY_KEY_ID=rzp_test_xxxxx
RAZORPAY_KEY_SECRET=xxxxx
# Cloudinary
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=xxxxx
CLOUDINARY_API_KEY=xxxxx
CLOUDINARY_API_SECRET=xxxxx
# Google OAuth
GOOGLE_CLIENT_ID=xxxxx
GOOGLE_CLIENT_SECRET=xxxxx
# Admin
ADMIN_EMAIL=admin@radhestationery.com- Browse products with search
- Add items to cart
- Checkout with payment
- View orders
- Manage addresses
- Access admin panel
- Manage categories
- Create products
npm run type-check # TypeScript check
npm run lint # Linting
npm run build # Build check- Page Load: < 2 seconds
- API Response: < 500ms
- Search: < 500ms
- Uptime Target: 99.9%
- Push code to GitHub
- Connect to Vercel
- Set environment variables
- Deploy
- Complete Setup Guide - Start here
- Quick Start - Quick setup
- Setup Guide - Initial setup
- Features Summary - All features
- Search Feature - Search guide
- Category Management - Categories
- Admin Features - Admin panel
- Implementation Summary - Technical details
- Search Implementation - Search details
- Final Summary - Project summary
- Deployment Checklist - Pre-deployment
- Product catalog
- Shopping cart
- Checkout
- Payment processing
- Order management
- User authentication
- User profile
- Address management
- Product search
- Dynamic categories
- Product reviews
- Delivery tracking
- Invoice generation
- Admin dashboard
- Category management
- User management
- Responsive design
- Mobile-friendly
- Intuitive navigation
- Loading states
- Error handling
- Empty states
- Accessibility
This is a complete project. For modifications:
- Create a feature branch
- Make changes
- Test thoroughly
- Submit pull request
For questions or issues:
- Check relevant documentation
- Review API endpoints
- Check browser console
- Verify database connection
- Check environment variables
This project is proprietary software for Radhe Stationery.
This platform is production-ready and fully functional. Start with the Complete Setup Guide.
- Total Pages: 30+
- Total API Routes: 30+
- Database Models: 7
- Components: 20+
- Documentation Files: 12+
- Features: 50+
- Lines of Code: 5000+
β Complete Solution - Everything needed for an e-commerce store β Production Ready - Secure, scalable, and optimized β Well Documented - 12+ comprehensive documentation files β Easy to Extend - Clean code structure β User Friendly - Intuitive UI/UX β Admin Powerful - Full control over operations β Search Enabled - Find products easily β Dynamic Categories - Unlimited category management
Radhe Stationery - Your Complete E-Commerce Solution π
Built with β€οΈ using Next.js, TypeScript, MongoDB, and Tailwind CSS
| Section | Link |
|---|---|
| Setup | Complete Setup Guide |
| Features | Features Summary |
| Search | Search Feature |
| Categories | Category Management |
| Admin | Admin Features |
| Deployment | Deployment Checklist |
| Summary | Final Summary |
Last Updated: December 28, 2025 Status: β Production Ready