0% found this document useful (0 votes)
5 views

Project Report

Project Report
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

Project Report

Project Report
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Household Services Application

Project Report by

Venkatesh A M

23F3004331

Modern Application Development – I


September, 2024 Term

Student Details

● Name: Venkatesh.A.M
● Roll No.: 23F3004331
● Email: [email protected]
● About Me:
I am enthusiastic about building applications that simplify everyday tasks for users. This
project allowed me to deepen my skills in backend development, specifically with Flask
and database management using SQLite. When I’m not coding, I enjoy exploring new
technologies, playing [favorite sport], and spending time on [another hobby].

Project Overview

The Household Services Application aims to provide a unified platform that connects service
professionals with customers seeking home-based solutions, such as plumbing, AC
maintenance, and electrical repairs. The application includes distinct roles:

● Customers: Can register, log in, and request various household services.
● Service Professionals: Have a profile and manage assigned customer requests.
● Admin: Oversees user activities, manages services, and ensures proper service
professional registration.

This app aims to make it easier for users to access reliable service providers while giving
professionals a structured platform to manage bookings.
Project Approach

To approach this project, I began by planning the essential features and structuring the
database. My steps included:

● Understanding User Roles and Access: Differentiating functionalities for each role to
ensure a clear user journey.
● Backend Logic: Building core features in Flask, such as user authentication, service
creation, and request handling.
● Template Design: Using Jinja2 for template rendering, I created a straightforward and
intuitive interface to enhance the user experience.
● Testing and Debugging: Systematically testing each feature in a local environment to
identify and resolve any issues early.

This systematic approach allowed me to incrementally develop and test each feature, aligning
with project requirements and ensuring a stable, functional application.

Technologies and Tools Used

1. Flask: Used as the backend framework to structure the app’s logic.


2. SQLite: Provided a lightweight database solution for handling data storage efficiently.
3. Jinja2: Enabled dynamic HTML rendering for user-specific content.
4. Flask-Login: Facilitated secure user session management.

Database Schema Design

The application’s database is structured to support efficient data access for all user roles,
including:

● Users: Contains id, username, password, and role to distinguish between admins,
professionals, and customers.
● Services: Details each available service, including fields like service_id, name,
payment, and description.
● Service Requests: Tracks customer requests with attributes such as request_id,
service_id, customer_id, serviceprofessional_id, stats, and optional
remarks.
● Professionals: Holds information about each professional, including their ID, expertise,
and contact details.

This relational design facilitates efficient query processing, allowing smooth data handling and
interaction across different user roles.
API Endpoints

1. User API: /api/user – Provides endpoints for managing user data (GET, POST, etc.).
2. Service API: /api/service – Handles service-related requests, including adding or
modifying services.
3. Service Request API: /api/servicerequest – Supports customer service requests,
including creating and updating service requests.
4. Professional API: /api/serviceprofessional – Allows service professionals to
view and respond to assigned service requests.

These APIs form a critical part of the app, enabling smooth communication between the
backend and user interface, while also supporting essential CRUD operations.
Project Video

MAD-1_project.mp4

Testing and Future Improvements

The app was tested locally to validate functionality across various user roles. For future
development, additional improvements such as data analytics or service feedback tracking
could enhance the platform’s utility and user engagement.

You might also like