project-society

byPalak

You are a senior Staff Software Engineer, SaaS Architect, UI/UX Designer, DevOps Engineer, and Product Manager. Your task is to build a COMPLETE production-ready multi-tenant Apartment Society Management SaaS for India. The application should not look like a hackathon prototype. It should look like a real SaaS product that could compete with commercial platforms. ================================================== PROJECT NAME ================================================== SocietyFlow Tagline: Smart Apartment Management Platform ================================================== PROJECT GOAL ================================================== Develop a cloud-based Apartment Society Management Platform where multiple apartment societies can subscribe and manage all their operations from one application. The application should support multiple societies. Every society should have isolated data. This is a B2B SaaS. The application should be modern, responsive, scalable, secure and production-ready. ================================================== TECH STACK ================================================== Frontend - React - TypeScript - Vite - TailwindCSS - Shadcn UI - React Router - React Query (TanStack Query) - React Hook Form - Zod - Framer Motion - Recharts Backend - Node.js - Express.js - TypeScript Database PostgreSQL ORM Prisma Authentication JWT Access Token Refresh Token Role Based Access Control Password Hashing using bcrypt Storage Cloudinary Email Nodemailer Notifications Firebase Cloud Messaging Payments Razorpay Deployment Ready Docker Docker Compose Nginx ================================================== PROJECT STRUCTURE ================================================== Create proper scalable folder structure. Frontend src components pages hooks services layouts features utils types contexts Backend controllers routes middlewares services repositories prisma config utils types validators ================================================== MULTI TENANT SAAS ================================================== This MUST be multi tenant. Every society has Society ID Name Subscription Plan Admin Residents Buildings Floors Flats Every query should automatically filter by Society ID. No resident can access another society's data. ================================================== USER ROLES ================================================== Super Admin Society Admin Committee Member Resident Tenant Security Guard Maintenance Staff Accountant Each role must have different permissions. Implement middleware for RBAC. ================================================== AUTHENTICATION ================================================== Implement Register Login Forgot Password Reset Password Refresh Token Email Verification Profile Change Password Two Factor Authentication (optional) ================================================== MODULE 1 SOCIETY MANAGEMENT ================================================== Create Society Add Towers Add Buildings Add Floors Add Flats Assign Residents Assign Owners Assign Tenants Upload Society Documents Society Settings Subscription Plan ================================================== MODULE 2 RESIDENT MANAGEMENT ================================================== Resident Profile Family Members Emergency Contact Vehicles Documents Occupation Move In Move Out Lease Expiry Digital ID Card ================================================== MODULE 3 VISITOR MANAGEMENT ================================================== Resident invites visitor. Generate QR Code. Visitor receives QR. Security scans QR. Check In. Check Out. Visitor history. Delivery tracking. Cab tracking. Domestic worker entry. ================================================== MODULE 4 MAINTENANCE BILLING ================================================== Monthly bill generation. Recurring charges. Parking charges. Water charges. Electricity. Penalty. Interest. GST. Payment reminders. Download invoice PDF. Payment status. ================================================== MODULE 5 ONLINE PAYMENTS ================================================== Integrate Razorpay. Payment Gateway. Generate Receipt. Refund. Transaction History. Late Fees. Recurring Payments. ================================================== MODULE 6 COMPLAINT MANAGEMENT ================================================== Residents create complaints. Categories Water Electricity Lift Parking Cleaning Security Others Upload images. Assign to staff. Track status. Timeline. Comments. Escalation. Priority. ================================================== MODULE 7 AMENITY BOOKING ================================================== Book Gym Swimming Pool Club House Tennis Court Badminton Court Guest Room Calendar View Prevent double booking. Booking approval. ================================================== MODULE 8 NOTICE BOARD ================================================== Committee can publish Notices Events Water Shutdown Festival Emergency Attach PDFs Push Notification ================================================== MODULE 9 DIGITAL VOTING ================================================== Society Elections Anonymous Voting Poll Results Single Vote Voting Window ================================================== MODULE 10 PARKING MANAGEMENT ================================================== Parking Allocation Visitor Parking Parking Availability Vehicle Database QR Parking Pass ================================================== MODULE 11 STAFF MANAGEMENT ================================================== Guards Housekeeping Electricians Gardeners Attendance Salary Shift Management ================================================== MODULE 12 VENDOR MANAGEMENT ================================================== Vendor Registration AMC Tracking Invoices Payments Renewals ================================================== MODULE 13 ACCOUNTING ================================================== Income Expense Ledger Bank Accounts GST Reports Audit Logs ================================================== MODULE 14 COMMUNITY MARKETPLACE ================================================== Residents can Sell Products Rent Items Offer Services Lost & Found ================================================== MODULE 15 DOCUMENT MANAGEMENT ================================================== Store Society Rules Meeting Minutes AGM Documents Certificates Invoices Insurance ================================================== MODULE 16 EMERGENCY SYSTEM ================================================== Emergency SOS Notify Security Committee Family Fire Medical Police ================================================== MODULE 17 ANALYTICS DASHBOARD ================================================== Charts Monthly Collection Pending Payments Visitor Trends Complaint Trends Revenue Expense Occupancy Amenity Usage ================================================== DATABASE ================================================== Design proper relational database. Entities include Users Roles Permissions Society Buildings Floors Flats Residents Visitors Vehicles Bills Payments Complaints Amenities Bookings Polls Votes Vendors Invoices Documents Notifications Audit Logs Use Prisma relations. ================================================== UI DESIGN ================================================== Use modern SaaS dashboard. Minimalistic. Rounded cards. Beautiful gradients. Dark Mode Light Mode Responsive. Glassmorphism where appropriate. Smooth animations. Professional typography. Dashboard similar quality to Linear, Stripe Dashboard, Notion or Vercel. ================================================== EXTRA FEATURES ================================================== Global Search Command Palette Keyboard Shortcuts Realtime Notifications Activity Feed Export CSV Export PDF Import Excel Theme Customization Notification Center ================================================== ADMIN PANEL ================================================== Platform Analytics Manage Societies Subscriptions Revenue Dashboard Support Tickets Announcements Feature Flags ================================================== SECURITY ================================================== Helmet Rate Limiting CORS SQL Injection Protection XSS Protection CSRF Protection JWT Password Hashing Input Validation ================================================== API ================================================== Follow REST architecture. Use proper status codes. Pagination Filtering Sorting Search Error handling. ================================================== CODE QUALITY ================================================== Use SOLID principles Clean Architecture Reusable Components Custom Hooks Service Layer Repository Pattern Environment Variables Proper comments ================================================== DELIVERABLES ================================================== Generate the project in phases. Phase 1 Project setup Folder structure Database Authentication Phase 2 Core Society Modules Phase 3 Billing Complaints Visitor Management Phase 4 Analytics Notifications Payments Phase 5 Deployment Testing Documentation Do not generate placeholder code. Every feature should be fully implemented with production-quality code. Always explain architectural decisions before writing code. Maintain a clean Git history by suggesting meaningful commits after each completed feature. The final product should be polished enough to be deployed for real apartment societies and should demonstrate senior-level software engineering practices.

Landing
Landing

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 6

project-society

Introduction

The project-society aims to develop a comprehensive, production-ready multi-tenant SaaS platform specifically designed for apartment society management in India. This platform will enable multiple apartment societies to manage their operations efficiently from a single application, ensuring data isolation for each society and providing a modern, secure, and scalable solution.

System Overview

The project-society is a cloud-based Apartment Society Management Platform that supports multiple societies, each with isolated data. It is a B2B SaaS application designed to be modern, responsive, scalable, and secure, capable of competing with commercial platforms. The application will include comprehensive modules for society management, billing, analytics, and more, using a specified tech stack and following best practices for architecture and code quality.

Page 2 of 6

Functional Requirements as Story Points

  • As a Super Admin, I should be able to manage all societies, subscriptions, and platform analytics.
  • As a Society Admin, I should be able to create and manage societies, buildings, floors, flats, and residents.
  • As a Resident, I should be able to manage my profile, family members, and emergency contacts.
  • As a Security Guard, I should be able to manage visitor check-ins and check-outs using QR codes.
  • As a Maintenance Staff, I should be able to track and manage complaints and maintenance tasks.
  • As an Accountant, I should be able to manage billing, payments, and financial reports.
  • As a Committee Member, I should be able to publish notices and manage digital voting.
  • As a Tenant, I should be able to book amenities and manage my lease details.
  • As a Vendor, I should be able to register and manage service contracts and invoices.

User Personas

  • Super Admin: Manages the entire platform, societies, and subscriptions.
  • Society Admin: Manages individual societies, including residents and infrastructure.
  • Committee Member: Manages society notices, events, and voting.
  • Resident: Manages personal and family information, and interacts with society services.
  • Tenant: Similar to residents but with specific lease management capabilities.
  • Security Guard: Manages visitor entries and exits.
  • Maintenance Staff: Handles complaints and maintenance tasks.
  • Accountant: Manages financial aspects of the society.
  • Vendor: Provides services and manages contracts with the society.
Page 3 of 6

Core User Flows

  • Super Admin manages societies -> updates subscription plans -> views platform analytics.
  • Society Admin creates society -> adds buildings/floors/flats -> assigns residents.
  • Resident updates profile -> invites visitor -> visitor checks in via QR code.
  • Maintenance Staff receives complaint -> assigns task -> updates status.
  • Accountant generates monthly bills -> sends payment reminders -> updates payment status.
  • Committee Member publishes notice -> schedules event -> manages voting.
  • Tenant books amenity -> receives booking confirmation -> uses amenity.
  • Vendor registers -> submits invoice -> receives payment.

Visuals Colors and Theme

  • primary: #1A73E8 (Deep Blue)
  • primary_light: #E8F0FE (Light Blue)
  • secondary: #F9AB00 (Amber)
  • accent: #DB4437 (Red)
  • highlight: #F4B400 (Gold)
  • bg: #FFFFFF (White)
  • surface: rgba(250, 250, 250, 0.8)
  • text: #202124 (Dark Gray)
  • text_muted: #5F6368 (Muted Gray)
  • border: rgba(218, 220, 224, 0.2)
Page 4 of 6

Signature Design Concept

Interactive Society Map: The homepage will feature an interactive map of the apartment society. Users can click on different buildings to view detailed information about each one, such as available flats, amenities, and resident profiles. The map will animate transitions between buildings using motion/react, providing a seamless and engaging user experience. The map will also include real-time updates on visitor entries and maintenance activities, making it a dynamic and informative landing page.

Landing Hero Motion Brief

The landing page will feature a continuously moving 2D illustration of a vibrant apartment society. The animation will depict residents interacting with various amenities, such as the gym and swimming pool, while maintenance staff attend to tasks. The scene will loop every 10 seconds, showing the transformation of the society from a quiet morning to a bustling afternoon. The animation will be built using motion/react for smooth transitions and interactions.

Interaction Model & Motion Direction

  • Intended Interaction Model: Animated
  • The landing page will feature moderate scroll-triggered reveals, hover transitions, and spring physics on interactive elements. Each section will have a distinctive core mechanic, such as morphing SVGs or kinetic typography, to enhance user engagement.
Page 5 of 6

Non-Functional Requirements

  • The application must be highly available and scalable to support multiple societies.
  • Ensure data isolation and security for each society.
  • Implement responsive design for accessibility on various devices.
  • Maintain high performance with optimized loading times.

Tech Stack

  • Frontend: React, TypeScript, Vite, TailwindCSS, Shadcn UI, React Router, React Query, React Hook Form, Zod, Framer Motion, Recharts
  • Backend: Node.js, Express.js, TypeScript
  • Database: PostgreSQL with Prisma ORM
  • Authentication: JWT Access Token, Refresh Token, Role-Based Access Control, Password Hashing using bcrypt
  • Storage: Cloudinary
  • Email: Nodemailer
  • Notifications: Firebase Cloud Messaging
  • Payments: Razorpay
  • Deployment: Docker, Docker Compose, Nginx

Assumptions and Constraints

  • The platform will be hosted on a cloud infrastructure to ensure scalability.
  • Each society will have a unique Society ID for data isolation.
  • The application will adhere to Indian regulations and standards for data protection and privacy.
  • The platform will support both English and Hindi languages for broader accessibility.
Page 6 of 6

Glossary

  • SaaS: Software as a Service
  • B2B: Business to Business
  • RBAC: Role-Based Access Control
  • JWT: JSON Web Token
  • ORM: Object-Relational Mapping
  • UI/UX: User Interface/User Experience
  • API: Application Programming Interface

This document outlines the comprehensive requirements and design specifications for the project-society, ensuring a robust and user-friendly platform for apartment society management in India.

Landing design preview
Landing: View Info
Login: Sign In
Dashboard: View Overview
Billing: Generate Bills
Billing: Send Reminders
Payments: Update Status
Payments: View Transaction History
Accounting: Manage Ledger
Accounting: Track GST
Reports: View Financial Reports
Invoices: Download PDF
Landing design preview
Landing: View Info
Login: Sign In
Dashboard: View Overview
Billing: Generate Bills
Billing: Send Reminders
Payments: Update Status
Payments: View Transaction History
Accounting: Manage Ledger
Accounting: Track GST
Reports: View Financial Reports
Invoices: Download PDF