A full-featured E-Commerce web application built using React.js, Redux Toolkit, Firebase Authentication, and Firestore Database.
BuyBusy was initially developed as a learning project while exploring React.js and modern frontend development. Later, the application was refactored using Redux Toolkit to improve state management, scalability, and code organization. This project also served as my final-year major project and is now part of my developer portfolio.
The application allows users to create accounts, securely log in, browse products, manage their shopping cart, and place orders through a responsive and user-friendly interface.
๐ Live Application: BuyBusy Live Demo
- Portfolio: https://my-portfolio-one-wheat-24.vercel.app/
- LinkedIn: https://www.linkedin.com/in/simran-mandal0211/
- GitHub: https://github.com/SimranMandal0211
- User Registration
- User Login
- Secure Firebase Authentication
- Persistent User Sessions
- Logout Functionality
- Protected Routes
- Browse Available Products
- Product Filtering
- Dynamic Product Rendering
- Responsive Product Layout
- Add Products to Cart
- Increase Quantity
- Decrease Quantity
- Remove Products
- Real-Time Cart Updates
- Purchase All Cart Items
- Store Orders in Database
- View Previous Orders
- Detailed Order History
- Responsive Design
- Loading Indicators
- Toast Notifications
- Error Handling
- Smooth Navigation
- React.js
- React Router DOM
- Redux Toolkit
- React Redux
- Firebase Authentication
- Firebase Firestore
- CSS3
- React Toastify
- React Spinner Material
- Render
src/
โ
โโโ components/
โ โโโ NavBar
โ โโโ Loader
โ โโโ CartItem
โ โโโ OrderDetail
โ โโโ FilterBar
โ โโโ MainContent
โ
โโโ pages/
โ โโโ Home
โ โโโ SignIn
โ โโโ SignUp
โ โโโ Cart
โ โโโ Orders
โ โโโ Error
โ
โโโ redux/
โ โโโ authReducer
โ โโโ productReducer
โ โโโ store
โ
โโโ routes/
โ
โโโ App.js
- User creates an account.
- User signs in using Firebase Authentication.
- Session is maintained securely.
- Protected pages become accessible.
- User can logout at any time.
- Browse products.
- Add products to cart.
- Update product quantities.
- Remove unwanted products.
- Purchase products.
- Store order history in the database.
- View previous orders.
One of the most challenging parts of this project was refactoring the entire application after learning Redux Toolkit.
The application was originally developed using React's basic state management techniques. After understanding Redux and centralized state management, I decided to rebuild the data flow using:
- Redux Toolkit
- createSlice()
- createAsyncThunk()
- Centralized Redux Store
This migration required restructuring multiple components and solving state synchronization issues across the application.
Implementing user authentication introduced several challenges, including:
- Managing user sessions
- Protecting authenticated routes
- Synchronizing Firebase authentication state
- Handling login and logout flows
Working through these challenges significantly improved my understanding of frontend architecture and real-world application development.
Through this project, I gained practical experience with:
- React Component Architecture
- React Router DOM
- Redux Toolkit
- Async Thunks
- Global State Management
- Firebase Authentication
- Firestore Database
- Protected Routes
- Application Scalability
- Debugging Complex State Issues
- Deployment Using Render
Clone the repository:
git clone YOUR_REPOSITORY_LINKNavigate to the project folder:
cd buybusy-reduxInstall dependencies:
npm installRun the application:
npm startOpen:
http://localhost:3000
Planned enhancements include:
- Payment Gateway Integration
- Product Wishlist
- Product Reviews & Ratings
- Advanced Search Functionality
- Product Sorting
- Pagination
- User Profile Management
- Order Tracking System
Simran Mandal
Feel free to connect with me and explore my other projects.
- GitHub: https://github.com/SimranMandal0211
- LinkedIn: https://www.linkedin.com/in/simran-mandal0211/
- Portfolio: https://my-portfolio-one-wheat-24.vercel.app/
โญ If you found this project interesting, consider giving it a star.






