Bike Zone - Full-Stack Bike Shop
A full-stack bike shop application with secure authentication, product browsing, admin management, and real-time order handling.

Project Overview
Bike Zone is a full-stack bike shop application that provides a seamless shopping experience for customers with secure authentication, product browsing, admin management, and real-time order handling.
The platform features role-based access control with customer and admin roles, enabling differentiated experiences for each user type.
Built with React and Redux on the frontend, paired with Node.js, Express, and MongoDB on the backend, the application delivers a robust and scalable e-commerce solution.
Key Features
- Authentication & Authorization — Secure user registration and login with hashed passwords, JWT-based authentication stored in local storage, and role-based access for customers and admins.
- Product Browsing & Filtering — Search products by brand, bike name, or category with dynamic filtering by price, model, brand, category, and availability.
- Product Details & Purchase — Full product information display with a 'Buy Now' button and checkout page with quantity validation and SurjoPay payment integration.
- Admin Dashboard — Comprehensive admin panel for managing products (CRUD), users (deactivate), and orders (CRUD) with full control.
- User Dashboard — Users can view their orders and profile, and update their password with current password verification.
- Responsive Design — Fully responsive interface optimized for all screen sizes with clean layout and intuitive navigation.
- Error Handling & Notifications — Robust error handling for invalid login, duplicate registration, and out-of-stock products with loading spinners and toast notifications.
Technical Highlights
- React with Redux — Efficient state management across the application using Redux for predictable data flow and scalable architecture.
- TypeScript Implementation — Ensures type safety and robust code structure across both frontend and backend codebases.
- JWT Authentication — Secure token-based authentication with middleware for protected routes and role-based access control.
- RESTful API Design — Well-structured Express.js API endpoints with CRUD operations for products, users, and orders with pagination support.
- MongoDB Data Modeling — Efficient database design with collections for users, products, and orders with proper relationships and indexing.
- Payment Integration — Seamless SurjoPay integration for secure payment processing during checkout.
Challenges & Solutions
Tech Stack Breakdown
frontend
React, Redux, TypeScript, Tailwind CSS, React Router
backend
Node.js, Express.js, JWT, bcrypt
database
MongoDB, Mongoose
payment
SurjoPay
tools
Git, Vercel (Client), Render (Server), Postman