An API project used to perform different operations related to ecommerce.
DOCUMENTATION:
https://documenter.getpostman.com/view/39914067/2sAYBaBANB
FEATURES:
User Authentication:
User signup and signin functionality.
Password hashing for secure storage using Flask-Bcrypt.
JWT (JSON Web Tokens) for user session management.
Product Management:
Ability to add, update, and delete products.
Retrieve a list of all products.
Cart Management:
Users can add products to their cart.
Remove products from the cart.
View cart contents and total amount.
Order Management:
Place orders based on cart contents.
Retrieve a list of orders placed by the user.
Email and Password Validation:
Validations for email format and password strength during signup
TECHNOLOGIES USED:
Flask: A lightweight WSGI web application framework for Python, used to build the web application.
Flask-SQLAlchemy: An extension for Flask that adds support for SQLAlchemy, allowing for easy database interactions.
Flask-JWT-Extended: An extension for Flask that provides JWT support for user authentication.
Flask-Bcrypt: A Flask extension that provides bcrypt hashing utilities for password hashing.
SQLite: A lightweight database used for storing user, product, cart, and order data.
Python: The programming language used to develop the application.
HTML/JSON: For structuring the API responses and possibly the frontend (not explicitly mentioned in the code).
HOW TO RUN PROJECT:
- Clone the repository to your local machine.
- On terminal type "python ecommerce/app.py".
- Open the system provided localhost link.