App Development Project Report
App Dev Project Report
1. Student Details
Name: Shri Krishna Pandey
Roll Number: BS22XXXX
Email: skpandey@[Link]
About Me: I am a Course Instructor at IIT Madras BS Degree program with a deep interest in
web application development and data-driven technologies. I enjoy building meaningful
applications that combine learning, analytics, and user experience.
2. Project Details
Project Title: Quantified Self App
Problem Statement:
To design and build a web-based application that allows users to track, visualize, and reflect
on their daily habits and activities, such as sleep, exercise, study hours, and mood.
Approach:
The app was built using Flask as the backend framework with a modular structure. It allows
users to log activities daily, visualize trends through interactive charts, and analyze behavioral
insights over time.
3. AI/LLM Declaration
I used ChatGPT (GPT-5) to assist in writing SQLAlchemy model definitions, creating API
documentation samples, and improving variable naming consistency.
The extent of AI/LLM usage is around 10–15%, limited to code suggestions and
documentation formatting.
All final implementation logic, debugging, and integration were done manually.
OR
No use of AI/LLM.
4. Technologies and Frameworks Used
Technology / Library Purpose
Flask Core backend web framework
SQLAlchemy Object Relational Mapper for SQLite database
Jinja2 Template engine for rendering dynamic HTML pages
Bootstrap 5 Frontend styling and responsive design
[Link] To visualize trends such as activity vs. time
Flask-Login User authentication and session management
WTForms Frontend form validation
SQLite Lightweight local database for storing user data
5. Database Schema / ER Diagram
Tables:
1. User — stores user profile details (id, name, email, password)
2. Activity — logs user activities (id, user_id, activity_type, duration, date, mood)
3. ActivityType — stores predefined activity categories (id, name, description)
Relationships:
● One-to-Many → User → Activity
● One-to-Many → ActivityType → Activity
(Insert ER diagram image here – can be created using [Link] or [Link] or any other
website)
( example taken form [Link] )
6. API Resource Endpoints
Endpoint Method Description
/api/login POST Authenticate user and generate session
/api/activities GET Fetch logged activities for a user
/api/activity/add POST Add new activity entry
/api/summary GET Return daily/weekly analytics summary
YAML API Definition File:
Included separately in the submission ZIP as [Link].
7. Architecture and Features (optional)
Architecture Overview:
● [Link] – main Flask application entry point
● /models – database models using SQLAlchemy
● /routes – Flask Blueprints for user and activity routes
● /templates – Jinja2 HTML templates
● /static – CSS, JS, and chart visualization files
Implemented Features:
User registration and login
Daily activity tracking and habit logging
Visualization dashboard using [Link]
Summary analytics with date filtering
Responsive UI built with Bootstrap
Secure password hashing and user session handling
Additional Features:
● Export user logs as CSV
● AI-generated weekly summary insights (optional extension)
8. Video Presentation
Drive Link:
[Link]
(Accessible to all with “View” permission.)
After Creating the doc
Convert this doc to pdf and download ( This should not be included in project report.):
Where should you be adding the report ?
● The report should be included in the zip file which you are submitting.
● Put the report in the drive link and paste the drive link in the viva portal while submitting
the app.
Both the things are covered in the video. Please watch it once.
How to Submit App Dev 1 & 2 Projects | Full Submission Guide + Viva Workflow | I…