Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

MAD I Project – Grocery Store

Step 1: Project Setup


1. Set up a new Flask project and create the necessary project
files and folders.
2. Install Flask, Jinja2, Bootstrap, and SQLite dependencies.
Step 2: Create the Database
1. Define the database schema using SQLite.
2. Create tables for users, sections/categories, and products.
3. Implement the necessary relationships between the tables.
Step 3: Implement User Authentication
1. Create a login form for users and the admin/store
manager.
2. Implement the login functionality and session
management using Flask's session.
3. Implement the necessary routes and views for user
authentication.
Step 4: Category and Product Management (Store
Manager)
1. Implement CRUD operations for sections/categories,
including create, read, update, and delete.
2. Implement the necessary routes and views for managing
sections/categories.
3. Implement CRUD operations for products, including
create, read, update, and delete.
4. Implement the necessary routes and views for managing
products.
Step 5: Search and Cart Functionality
1. Implement search functionality for sections based on
section/category names.
2. Implement search functionality for products based on
price, manufacture date, etc.
3. Implement the cart functionality to add multiple products.
4. Calculate the total amount to be paid for the transaction.
Step 6: Buying Products
1. Display all the available products for a given category to
the users.
2. Implement the ability to buy multiple products from one
or multiple sections.
3. Handle out-of-stock products and display appropriate
messages.
4. Process the transaction and update the inventory
accordingly.
Step 7: APIs and Validation
1. Implement APIs for CRUD operations on sections and
products using Flask's route decorators.
2. Implement validation for form inputs, including text,
numbers, dates, etc.
3. Perform backend validation before storing or retrieving
data from the database.
Step 8: Optional Enhancements
1. Implement styling and aesthetics using Bootstrap and
custom CSS.
2. Enhance the login system with proper security measures,
such as password hashing and encryption.
3. Implement data export functionality to track
section/product engagement.
4. Implement demand prediction based on previous trends.
5. Implement promo codes for first-time users.
MAD 1 project guidelines (Discourse)

1st step: MAD 1_Fun with Flask-SQLAlchemy - YouTube


2nd step: MAD 1_Build Full-Fledged Web Application
using Flask-SQLAlchemy - YouTube
3rd step: Apply your learning from 1st and 2nd step in
doing project of this term
4th step: Submit your project.
5th step: Attend both Vivas
Extra support: Important for project
HTML & CSS: Web Development Tutorials For Beginners
In Hindi: HTML, CSS, JavaScript & More - YouTube (first
45 videos only)
Flask: Build website in Flask - YouTube
Dealing with Database:
Part1: MAD 1_Understanding flask-sqlalchemy - Part 1 -
YouTube
Part2: MAD 1_Understanding flask-sqlalchemy - Part 2 -
YouTube
Open session: MAD 1_Open Session/Summary - Week 6
- YouTube
Dealing with the login framework: Python Flask
Authentication Tutorial - Learn Flask Login - YouTube

Project Live Sessions


MAD 1 Jan 2023 Project Sessions - YouTube
MAD I - Project Session - YouTube (June 2023)

You might also like