Version 2.0 - Modern full-stack e-commerce application
- Node.js v14+ installed
- MongoDB Atlas account
- npm or yarn
# Install all dependencies for root, server, and client
npm run install:all
# Or install manually:
npm install # Root dependencies
cd server && npm install # Server dependencies
cd ../client && npm install # Client dependenciesCreate a .env file in the /server directory:
MONGODB_URI=mongodb+srv://username:[email protected]/kulswamini?retryWrites=true&w=majority
JWT_SECRET=your-secret-key-here
PORT=5000# Development mode (runs both client and server concurrently)
npm run dev
# Or run separately:
npm run server # Backend on http://localhost:5000
npm run client # Frontend on http://localhost:3000Visit http://localhost:3000 in your browser!
/kulswamini-grinding-works
βββ /client # React Frontend
β βββ /public
β β βββ /images # Product images
β βββ /src
β β βββ /components # Reusable components
β β βββ /pages # Page components
β β βββ /context # React Context (Auth, Cart)
β β βββ /styles # CSS files
β β βββ App.js
β βββ package.json
β
βββ /server # Node.js Backend
β βββ /models # MongoDB models
β βββ /routes # API routes
β βββ /middleware # Auth middleware
β βββ server.js
β βββ package.json
β
βββ /legacy # Old HTML files (backup)
βββ package.json # Root monorepo config
- Primary: Warm amber/copper tones (#f59e0b, #d97706)
- Accents: Sunset orange (#fb923c), steel gray (#71717a)
- NO blues or indigos (following constraint-based design)
- Small:
5px(not 8px) - Medium:
14px(not 12px) - Large:
22px(not 16px or 24px) - Extra Large:
38px(not 32px or 40px)
- Sunrise-inspired: Orange β Amber β Yellow
- Metallic: Copper β Amber
- Steel: Light gray β Dark gray
- β Responsive navigation with mobile menu
- β Product browsing with category filtering
- β Shopping cart management
- β User authentication (login/signup)
- β Protected routes
- β Context API for state management
- β RESTful API
- β JWT authentication
- β MongoDB integration
- β Product CRUD operations
- β Contact form management
- β Role-based access control (Admin/User)
POST /api/auth/register- Register new userPOST /api/auth/login- Login user
GET /api/products- Get all products (public)GET /api/products/:id- Get single productPOST /api/products- Create product (admin only)PUT /api/products/:id- Update product (admin only)DELETE /api/products/:id- Delete product (admin only)
POST /api/contact- Submit contact formGET /api/contact- Get all submissions (admin only)PUT /api/contact/:id- Update submission status (admin only)
Email: [email protected]
Password: admin123
β οΈ Change this in production!
cd server
npm run dev # Uses nodemon for auto-restartcd client
npm start # React dev server with hot reloadnpm run build # Creates optimized production build in client/build- Deploy
/serverto Heroku, Railway, or Render - Set environment variables
- Ensure MongoDB Atlas IP whitelist includes deployment server
- Deploy
/client/buildto Netlify, Vercel, or similar - Update API base URL if not using proxy
| Command | Description |
|---|---|
npm run dev |
Run both client and server concurrently |
npm run server |
Run backend server only |
npm run client |
Run frontend client only |
npm run install:all |
Install dependencies for all packages |
npm run build |
Build React app for production |
- React 19.2
- React Router DOM 7
- Axios
- Context API
- CSS3 (Custom design system)
- Node.js
- Express.js 4.21
- MongoDB + Mongoose 8.13
- JWT Authentication
- bcryptjs
Old HTML files are preserved in /legacy folder. The new React architecture provides:
- Better state management
- Improved performance
- Modern development experience
- E-commerce capabilities
- Scalable component architecture
Kulswamini Grinding Works
Ground Floor Plot No.268, Near Thakur Engg Work
Pokhran Road No.01, Thane - 400606
π +91 8104999122
βοΈ [email protected]
Copyright Β© 2025 Kulswamini Grinding Works. All rights reserved.
Built with β€οΈ using React + Node.js