Back to projects

Subdivision OS

HOA Management Platform

Project overview

A multi-tenant platform for managing homeowners' associations (HOAs) and subdivisions. One deployment hosts independent subdivisions, each with its own residents, finances, staff, and records. All financial activity is recorded as permanent, append-only entries rather than editable rows.

People and roles

  • Super Admin

    Oversees the whole platform. Reviews and approves (or rejects) new subdivisions that sign up, manages subdivision admins, and can view a platform-wide audit log across every tenant.

  • Subdivision Admin / Staff

    Runs the day-to-day operations of one subdivision: residents and households, billing and dues, income and expenses, payroll, inventory, projects, events, and announcements.

  • Resident

    A self-service portal scoped to their own household: view balance, bills, and payment history, and see announcements, news, and events for their community.

How it works

  • Multi-tenancy

    Each subdivision is a tenant identified by a URL slug. A user's access and role (Admin, Staff, or Resident) is defined by a membership row, so one account can belong to multiple subdivisions with different roles in each. Every request resolves the tenant context server-side before any data is read or written.

  • Onboarding & Approval

    A new subdivision starts in Pending status. Only a Super Admin can approve it. Users attached to an unapproved subdivision see a pending-approval screen.

  • Immutable Financial Records

    Payments, income, expenses, bills, and payroll are never edited or deleted in place. Corrections use void and reversal. Each change writes a linked audit log entry in the same transaction, so a mutation cannot commit without a matching trail.

Core modules

  • Households & Residents
  • Billing & Payments
  • Accounting
  • Payroll & Employees
  • Inventory
  • Projects
  • Events & Announcements
  • Settings & Audit Logs