Kaamsetu

byAnkur

Build a complete production-ready Flutter application named “KaamSetu” for India. APP PURPOSE: KaamSetu connects Customers with Workers for local services like electricians, plumbers, painters, carpenters, cleaners, mechanics, delivery workers, etc. TECH STACK: * Flutter latest stable * Firebase Authentication * Firebase Firestore * Firebase Storage * Google Sign-In * OTP Authentication * Clean UI * Material Design 3 * Responsive design ROLES: 1. Customer 2. Worker 3. Admin APP FLOW: 1. Splash Screen 2. Home Screen with 3 cards: * Customer * Worker * Admin 3. Each role has separate login screen. CUSTOMER FEATURES: * Login with OTP * Login with Google * Customer Dashboard * Search workers by category * View worker profiles * Book workers * Booking history * Profile page * Settings page WORKER FEATURES: * Worker registration * Worker login * Worker dashboard * Add skills/services * Upload profile image * Availability status * Accept/reject bookings * Booking history * Earnings section ADMIN FEATURES: * Admin login * View all customers * View all workers * Approve/reject workers * Manage categories * Manage bookings FIREBASE: Use Firebase for: * Authentication * Firestore database * Storage * Real OTP authentication FOLDER STRUCTURE: lib/ ├── main.dart ├── screens/ ├── widgets/ ├── models/ ├── services/ ├── utils/ ├── firebase/ └── admin/ IMPORTANT: * Create all required screens. * Add proper navigation. * Add beautiful UI. * Use reusable widgets. * Add loading indicators. * Add validation. * Add comments in code. * Avoid deprecated Flutter code. * Use null safety. AUTHENTICATION: * Implement real Firebase OTP verification. * Implement Google Sign-In correctly. * Store user data in Firestore after login. UI STYLE: * Orange and white theme * Modern Indian startup style * Rounded cards * Gradient buttons * Professional look EXTRA: * Add dummy worker categories. * Add sample booking cards. * Add profile editing. * Add logout functionality. OUTPUT: Generate complete Flutter code screen by screen with imports and proper file names.

Home
Home

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 5

KaamSetu System Requirements Document

1. Introduction

KaamSetu is a mobile application designed to connect customers with local service providers such as electricians, plumbers, painters, carpenters, cleaners, mechanics, and delivery workers in India. The application aims to streamline the process of finding and booking local services through a user-friendly interface and robust backend support.

2. System Overview

KaamSetu leverages the latest technologies to provide a seamless experience for users. The application is built using Flutter for cross-platform compatibility, ensuring it runs smoothly on both Android and iOS devices. Firebase services are utilized for authentication, database management, and storage, providing a secure and scalable backend infrastructure.

Key Components:

  • Flutter: For building the mobile application.
  • Firebase: For authentication, real-time database, and storage.
  • Material Design 3: For a modern and responsive UI.
  • Role-Based Access: Separate interfaces and functionalities for Customers, Workers, and Admins.
Page 2 of 5

3. Functional Requirements

  • As a Customer, I should be able to log in using OTP or Google Sign-In.
  • As a Customer, I should be able to search for workers by category.
  • As a Customer, I should be able to view worker profiles and book services.
  • As a Customer, I should be able to view my booking history and manage my profile.
  • As a Worker, I should be able to register and log in to the app.
  • As a Worker, I should be able to add skills/services and manage my availability.
  • As a Worker, I should be able to accept or reject bookings and view my earnings.
  • As an Admin, I should be able to log in and manage users and bookings.
  • As an Admin, I should be able to approve or reject worker registrations and manage service categories.

4. User Personas

  • Customer: Individuals seeking local services.
  • Worker: Service providers offering skills in various categories.
  • Admin: Personnel managing the application and overseeing user activities.

5. Visuals Colors and Theme

Page 3 of 5

Color Palette

  • primary: #FF6F00 (Vibrant Orange)
  • primary_light: #FFA040 (Light Orange)
  • secondary: #004D40 (Teal)
  • accent: #D32F2F (Red)
  • highlight: #FFC107 (Amber)
  • bg: #FFFFFF (White)
  • surface: rgba(255, 255, 255, 0.9)
  • text: #212121 (Dark Grey)
  • text_muted: #757575 (Light Grey)
  • border: rgba(0, 0, 0, 0.1)

6. Signature Design Concept

Interactive Service Map

The homepage of KaamSetu will feature an interactive map of India, highlighting various cities and regions. Users can click on a city to zoom in and view available services and workers in that area. Each city will have animated icons representing different service categories. Hovering over an icon will display a brief description and clicking will lead to a detailed list of available workers. This dynamic map will be built using framer-motion for smooth animations and transitions, creating an engaging and intuitive user experience.

Page 4 of 5

7. Interaction Model & Motion Direction

  • Interaction Model: Parallax
    • The landing page will feature a parallax effect with layered depth, enhancing the interactive map experience.
    • Decorative elements such as floating service icons will move at different speeds to create a sense of depth.
  • Internal Pages: Static
    • Dashboard and profile pages will focus on clarity and ease of use, minimizing motion to enhance readability.

8. Non-Functional Requirements

  • Performance: The application should load within 3 seconds on a standard 4G network.
  • Scalability: The backend should support up to 100,000 concurrent users.
  • Security: Implement SSL encryption and secure authentication methods.
  • Usability: The application should be intuitive and easy to navigate for all user roles.

9. Tech Stack

  • Frontend: Flutter
  • Backend: Firebase (Authentication, Firestore, Storage)
  • Authentication: Firebase Authentication, Google Sign-In, OTP
  • UI Framework: Material Design 3
Page 5 of 5

10. Assumptions and Constraints

  • The application will primarily serve users in India, with localization for Indian languages planned for future updates.
  • Internet connectivity is required for most functionalities.
  • The application will adhere to Indian data protection regulations.

11. Glossary

  • OTP: One-Time Password
  • UI: User Interface
  • UX: User Experience
  • Firestore: A NoSQL cloud database by Firebase
  • Material Design 3: The latest version of Google's design system

This document outlines the comprehensive requirements for the KaamSetu application, ensuring a robust and user-friendly experience for all stakeholders.

Home design preview
Splash: View Intro
Home: Select Role
AdminLogin: Sign In
AdminDashboard: View Overview
Workers: Approve Worker
Workers: Reject Worker
Customers: View Customers
Bookings: Manage Bookings
Categories: Add Category
Categories: Edit Category
Workers: View All Workers
Customers: View All Customers