A modern, full-stack e-commerce grocery platform built for speed, scale, and a seamless user experience.
This project was architected, designed, and developed by:
- Muzakkir - Lead Full-Stack Developer & Architect
- Hafeez - Co-Developer & UI/UX Specialist
Rose Mart is a complete, end-to-end e-commerce ecosystem consisting of three primary components:
- User Mobile App: A sleek, responsive, and intuitive React Native application built with Expo for iOS and Android.
- Admin Dashboard: A powerful Next.js web panel for real-time inventory, order, and user management.
- Backend API: A highly optimized Express.js REST API backed by MongoDB, featuring robust Google OAuth authentication and secure role-based access controls.
- Seamless Authentication: One-tap Google OAuth login & secure JWT session management.
- Dynamic Marketplace: Browse categories, search products, and view detailed item pages.
- Smart Cart & Wishlist: Real-time state management for shopping carts and favorite items.
- Location Constraints: Advanced geocoding to restrict deliveries exclusively to serviceable areas.
- Hardware-Accelerated UI: Buttery smooth 60fps animations and skeleton loaders built with React Native's native Animated API.
- Real-time Analytics: High-level overview of sales, orders, and user growth.
- Product Management: Full CRUD capabilities for catalog items with image upload handling.
- Order Tracking: Seamlessly update order statuses (Pending -> Preparing -> Out for Delivery -> Delivered).
- User Control: Manage user roles and block/unblock capabilities.
- Strict Security: JWT validation, role-based route protection, and input sanitization.
- Data Integrity: Enforced Mongoose schemas and strict Indian mobile number validation.
- Optimized Queries: Advanced MongoDB aggregation pipelines for fast search and filtering.
- Cloud Ready: Configured for instant deployment on modern cloud platforms (Render, Vercel).
- Framework: React Native (Expo)
- State Management: React Context API
- Navigation: React Navigation (Native Stack)
- Styling: StyleSheet (Responsive units)
- Framework: Next.js 14
- Styling: Tailwind CSS
- Icons: React Icons / Lucide
- Runtime: Node.js
- Framework: Express.js
- Database: MongoDB (Mongoose ORM)
- Authentication: JWT & Google OAuth 2.0
- Validation: Custom Regex & Middleware guards
- Node.js (v18 or higher)
- MongoDB Atlas Account (or local instance)
- Expo CLI
cd backend
npm install
# Create a .env file based on .env.example
npm run devcd user-app
npm install
# Update API endpoints to point to your local/production backend
npx expo startcd admin-panel
npm install
npm run dev- Environment Variables: Sensitive keys (JWT Secrets, DB URIs) are strictly kept out of version control.
- Role-based Access: The backend strictly enforces
adminroles before granting access to sensitive data routes. - Production Optimization: The backend features "early wakeup" pings from the frontend to mitigate cold-start delays on free cloud tiers.
Built with passion by Muzakkir & Hafeez 🚀