Skip to content

syedsafeer/Handypro

Repository files navigation

HandyPro: Multi-Service Marketplace Platform (README Content)

  1. Title and Overview HandyPro: Multi-Service Worker/Admin Management System 🛠️

This is a robust, Flask-based web application designed to act as a comprehensive service marketplace. It connects general users who require services with skilled service providers (Workers) across multiple categories (e.g., Plumbing, Carpentry, HVAC, etc.). The platform features secure multi-role access, an admin-controlled worker approval system, and a real-time communication module.

  1. Key Features Multi-Tiered Authentication: Implements a secure login/signup system for three distinct roles: Admin, Service Providers (Workers), and General Users.

Admin Governance Panel: A dedicated panel where the admin manages and approves new worker registrations, ensuring service quality and controlled onboarding.

Real-time Chat and Offer System: Users can initiate direct, real-time chats with specific workers, and negotiate service agreements using a dedicated pricing offer system.

Feedback & Rating System: Users submit ratings (1-5) and detailed reviews, which are displayed on the worker's profile for transparency.

Secure Data Management: Utilizes Firebase Realtime Database for data persistence (profiles, chats, feedback, offers) and Firebase Authentication.

Enhanced Security: Implements password hashing and verification using werkzeug.security for secure credential storage.

Automated Notifications: Integrates yagmail to send automatic email confirmations to workers upon account approval or rejection.

  1. Technologies Used Backend Framework: Python Flask (Core web application logic and routing).

Database & Services: Firebase Realtime Database, Firebase Authentication (Data persistence and user identity management).

Security: werkzeug.security (Password hashing and verification).

Email Service: yagmail (Automated account status notifications).

Frontend: HTML, CSS, JavaScript (User Interface and client-side interactivity).

  1. Setup and Installation Follow these steps to set up and run the project locally:

Clone the Repository: git clone [Your Repository URL Here]

Dependencies Install: Install Python packages like Flask, firebase-admin, werkzeug, and yagmail.

Firebase Configuration: Place the Firebase Admin SDK JSON credentials file in the project root directory and set environment variables.

Run Application: Execute python app.py.

  1. Demo Access Credentials (Admin) For demonstration purposes, the Admin login uses the following credentials:

Access Route: /admin_login

Email: admin@gmail.com

Password: 123456789

About

HandyPro: A full-stack web-based platform that connects customers with skilled service providers. Built using React for the frontend and Django for the backend.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages