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)