Skip to content

404-GeniusNotFound/Household_Services_App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

🛠️ Household Services Application V2

Modern Application Development - II | January 2025


🧩 Objective

Build a multi-role home services platform connecting customers, service professionals, and an admin. The app enables booking, managing, and tracking household services like plumbing, cleaning, AC repair, etc., through an interactive UI and secure backend.


🧰 Tech Stack

  • Frontend: VueJS (with optional CLI), Bootstrap
  • Backend: Flask (REST API)
  • Database: SQLite (strictly required)
  • Other Services: Redis + Celery (batch jobs), Google Chat/Webhooks (notifications), SMTP/email
  • Optional: ChartJS, HTML5 validation, Flask-Login/Security

👥 User Roles

1. Admin

  • Login (role-based, no registration)
  • Manage users and services
  • Approve or block service professionals
  • Create, update, or delete service types
  • View and export reports (CSV, email, etc.)

2. Service Professional

  • Register/login
  • View assigned service requests
  • Accept/reject services
  • Close completed tasks
  • Download monthly CSV report
  • Reviews impact visibility

3. Customer

  • Register/login
  • Search services by name or pincode
  • Request services and close them after completion
  • Provide ratings/reviews
  • Receive monthly usage reports

🧠 Core Features

  • 🔐 Role-Based Access Control (RBAC) via tokens or Flask sessions

  • 🗂️ CRUD Operations on:

    • Services
    • Service Requests
    • User profiles
  • 🔍 Search System: Filter services by name, location, pin code

  • 📝 Reviews: Customer feedback after service completion

  • 📤 Service Status Flow:
    requested → assigned → closed


🔁 Background Tasks (via Celery & Redis)

  • 📆 Daily Reminders: Notify professionals about pending jobs via GChat/email/SMS
  • 📈 Monthly Activity Reports:
    Auto-generate HTML report → email to customer
  • 📊 CSV Export:
    Admin-triggered async task to export service history of professionals

📦 Database Schema (Simplified)

🔹 Service

  • service_id, name, base_price, time_required, description

🔹 Service Request

  • request_id, service_id, customer_id, professional_id, date_requested, status, remarks

🔹 Users Table (with roles)

  • user_id, username, password, role, experience, etc.

🎨 UI Highlights

  • Built with VueJS + Bootstrap
  • Responsive UI for mobile and desktop
  • Dashboard views for all roles
  • Smart search and filtering options
  • Optional: Dummy payment page (non-functional)

🧪 Testing & Validation

  • ✅ Frontend form validation (HTML5 + JS)
  • ✅ Backend data validation (Flask API)
  • ✅ Cache optimization using Redis
  • ✅ Tested locally with SQLite, no cloud setup needed

📤 Submission Contents

  • 📁 backend/ - Flask APIs
  • 📁 frontend/ - VueJS App
  • 🗃️ database.db - SQLite
  • 🔁 celery_worker.py - Async tasks
  • 📄 README.md, report.pdf, ER_diagram.png, api_docs.md
  • 🎬 demo_video_link.txt

🏁 Final Thoughts

The Household Services V2 app is a robust, scalable solution for real-world service aggregation. It supports multi-role workflows, scheduled background jobs, advanced user interaction, and modular design, all built using core web technologies.

About

An app which lets you book household services

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors