This is a full-stack e-commerce application built using React on the frontend and Django on the backend. It provides a user-friendly platform for browsing products, managing orders, and handling administrative tasks.
- Browse products with details.
- Add/remove products to/from the shopping cart.
- User authentication: register, login, and profile management.
- Shipping address and payment method selection.
- Place orders and view order details.
- Manage users: view, update, and delete users.
- Manage products: view, update, delete, and add new products.
- View and manage orders.
The frontend is built with React and uses the following technologies:
- React Router: For routing and navigation.
- React-Bootstrap: For styling and layout.
- Custom SCSS: For additional styling.
src/components
: Contains reusable components such asHeader
andFooter
.src/screens
: Contains page-level components likeHomeScreen
,CartScreen
, andProfileScreen
.src/custom-bootstrap.scss
: Custom styles for the app.
Route | Component | Description |
---|---|---|
/ |
HomeScreen |
Displays a list of products. |
/product/:id |
ProductScreen |
Shows product details. |
/cart/:id? |
CartScreen |
Displays the shopping cart. |
/login |
LoginScreen |
User login page. |
/register |
RegisterScreen |
User registration page. |
/profile |
ProfileScreen |
User profile and orders. |
/shipping |
ShippingScreen |
Shipping address form. |
/payment |
PaymentScreen |
Payment method selection. |
/placeorder |
PlaceOrderScreen |
Order confirmation screen. |
/order/:id |
OrderScreen |
Order details page. |
/admin/userlist |
UserListScreen |
Admin user management. |
/admin/user/:id/edit |
UserUpdateScreen |
Admin edit user details. |
/admin/productlist |
ProductListScreen |
Admin product management. |
/admin/product/:id/edit |
ProductUpdateScreen |
Admin edit product details. |
/admin/orderlist |
OrderListScreen |
Admin order management. |
The backend is built with Django and uses Django REST Framework to expose APIs.
- Product management: CRUD operations on products.
- User authentication and management.
- Order management: Create, retrieve, and update orders.
Endpoint | Functionality |
---|---|
/api/products/ |
Product-related endpoints. |
/api/users/ |
User-related endpoints. |
/api/orders/ |
Order-related endpoints. |
/admin/ |
Django admin panel. |
- Node.js: For running the frontend.
- Python: For running the backend.
- Navigate to the
frontend
directory. - Install dependencies:
npm install