This project is an E-Commerce website built using Django on the backend and React on the frontend. The website specializes in selling t-shirts suitable for both winter and summer seasons. It provides users with a platform to browse, search, and purchase t-shirts online.
You can check the project mindmap here
- User Authentication: Users can sign up, log in, and manage their accounts.
- Product Catalog: Browse through a wide range of t-shirts categorized by season.
- Shopping Cart: Add items to the cart, update quantities, and proceed to checkout.
- Payment Processing: Secure payment processing for seamless transactions.
- Order Management: View past orders and track current orders.
- User Dashboard: User can allow to view his own dashboard
- Admin Panel: Admins can manage products, users, orders, and other aspects of the website.
- Django: A high-level Python web framework for rapid development and clean, pragmatic design.
- Django REST Framework: A powerful and flexible toolkit for building Web APIs in Django.
- React: A JavaScript library for building user interfaces.
- React Router: Declarative routing for React.
- Redux: A predictable state container for JavaScript apps.
- SQLite: Lightweight, serverless, and self-contained SQL database engine.
- Stripe API: Payment processing API for handling online transactions securely.
-
Clone the repository:
git clone https://github.com/your-username/E-Commerce-website-using-Django-React.git
-
Navigate to the project directory:
cd E-Commerce-website-using-Django-React
-
Install dependencies of Backend:
pip install pipenv pipenv shell pipenv install
-
Install dependencies of frontend:
cd projfrontend npm install
-
Set up environment variables:
- Create a
.env
file in the root directory. - Add the following variables:
REACT_APP_BACKEND=http://localhost:8000/api/
- Create a
-
Apply database migrations:
python manage.py migrate
-
Run the development server:
cd ecom python manage.py runserver
-
Start the React frontend:
cd projfrontend npm start
-
Open your browser and navigate to
http://localhost:3000
to view the website.