Welcome to the GRABIT e-commerce site! GRABIT is a full-featured online store that delivers a seamless shopping experience for users and robust management features for administrators.
GRABIT offers a comprehensive shopping experience. Users can browse product categories, add items to their cart, and proceed with secure checkout. Administrators have functionalities to manage products and view inventory.
The admin panel includes:
- Add Product: Allows administrators to add new products to the frontend via the backend.
- List Product: Displays a list of all products currently in stock.
The backend handles:
- Image uploading using Multer
- Product management: Add, remove, and fetch products
- User authentication with JWT
- User registration and login
- Cart management: Add, remove, and fetch cart data
- Endpoints for creating new collections and popular products in the women's section
The frontend includes:
- Shop categories: Men, Women, and Kids
- Cart page
- Login/sign-up functionalities
It leverages the backend to provide a dynamic and interactive user experience.
- Frontend: React, React Router DOM, CSS
- Backend: Express, MongoDB, Mongoose, JWT, Multer
- Deployment: Vercel
To get a local copy up and running, follow these steps:
- Node.js
- npm
Follow these steps to set up the project locally:
-
Clone the repository:
git clone https://github.com/ujjwal105/e-commerce-website.git
-
Navigate to the project directory:
cd e-commerce-website
-
Install backend dependencies:
cd backend npm install
-
Set up environment variables:
- Add the following variables:
MONGO_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret
- Add the following variables:
-
Start the backend server:
node index.js
The backend server will start on
http://localhost:4000
. -
Install frontend dependencies:
cd ../frontend npm install
-
Start the frontend server:
npm start
The frontend server will start on
http://localhost:3000
. -
Access the application:
- Open your browser and navigate to
http://localhost:3000
to access the frontend. - Use
http://localhost:5000/api
to interact with the backend APIs.
- Open your browser and navigate to
Once the application is set up, you can start exploring its features:
- Browse Products: Navigate through different categories (Men, Women, Kids) and view product details.
- Cart Management: Add products to the cart, update quantities, and proceed to checkout.
- Authentication: Register a new account or login to an existing one for a personalized shopping experience.
- Add Product: Use the admin panel to add new products, including images and descriptions.
- Manage Inventory: View and manage the list of products in stock.
GRABIT is deployed using Vercel. For deploying your own version, follow these steps:
- Build the frontend:
cd frontend npm build
- Deploy to Vercel:
- Sign up for a Vercel account and link it to your GitHub repository.
- Push your changes to GitHub.
- Follow the instructions on Vercel to deploy your project.
Future enhancements and planned features:
- Order History: Allow users to view their past orders.
- Product Reviews: Enable users to leave reviews and ratings for products.
- Advanced Search: Implement a search functionality with filters and sorting options.
- Wishlist: Allow users to save products to a wishlist for future purchase.
Special thanks to the following resources and tools that made this project possible:
Distributed under the MIT License. See LICENSE
for more information.
Ujjwal Tyagi - ujjwaltyagi2969@gmail.com
Project Link: GRABIT E-commerce Site