Case study · 05· Live · Built solo

Strata36 — A private HOA portal for owners, boards, and management companies

A private homeowners-association portal — announcements, documents, meetings, audit log behind everything.

Next.js 14TypeScriptSupabase (RLS)React Hook FormZod
strata36.com
strata36.com
Strata36 owner portal — announcements, documents, meetings, and directory in one place

Strata36 — a private portal for owners, board admins, and the management company.

The problem

Most condominium and homeowners-association buildings still run on email chains, a shared Dropbox folder, and a printout taped to the elevator. Announcements get buried. Documents are version-soup. Meeting minutes live on someone's laptop. The management company, the board, and the owners all have different views of the same building — none of them complete, none of them current.

Strata36 was built for a real 36-unit condominium to replace all of that with a single, role-aware portal. Owners see what they should see. Board admins post and manage. The management company gets a clean operational surface. Every action is logged.

The approach

Strata36 is a Next.js 14 application on Supabase with row-level security policies enforcing role-based access on every table. Three roles — owner, admin, and management — see different surfaces of the same data, with the database itself guaranteeing isolation rather than relying on UI checks.

Announcements and newsletters. Board admins post building-wide announcements and send newsletters from inside the portal. Owners get a clean, dated feed instead of an inbox archaeology project.

Documents. Bylaws, financials, insurance certificates, and meeting packets live in a single document library with publish/draft states. No more emailing PDFs around or hunting through Dropbox folders nobody named consistently.

Meetings. Schedule board and owners' meetings, attach agendas, upload minutes after the fact. The whole record of how the building is governed lives in one searchable place.

Owner directory and roles. A managed owner directory with invite flows, role assignment, and the ability for owners to update their own profiles — all inside RLS-enforced boundaries.

Audit log behind everything. Every insert, update, and delete across user profiles, owner profiles, documents, announcements, and meetings is logged. When a question comes up at the next board meeting — who changed what, when — the answer is one click away.

Admin dashboard
Strata36 admin dashboard — active owners, total documents, quick actions, and recent activity

Admin dashboard — quick actions, owner and document counts, and a live audit-driven activity feed.

Outcomes

Strata36 is live and in production for a 36-unit condominium. The board posts announcements and newsletters, owners read them in one place, documents are versioned and current, meetings have a proper home, and the audit log gives the management company a single source of truth.

The interesting part isn't any one feature. It's the combination: role-based access, content management, governance records, and an audit trail behind everything — packaged as a tight, opinionated tool that does its one job well.

What this means for your business

If you're an HOA board running the building on email chains and a shared Dropbox, an owner tired of digging through old threads to find the latest financials, or a management company juggling several buildings with no consistent operational surface — Strata36 is the shape of the tool that replaces all of it.

The same architecture adapts to any small community with a board, members, documents, and meetings: co-ops, neighborhood associations, small clubs, building syndicates. The same role-aware Supabase + Next.js architecture scales from a CRM to a community portal without changing shape.

Want a private portal, members area, or SaaS like this for your building or community? Book a discovery call

Related work

Contact

Let's build something.

Working on a product idea, a CRM mess, or a real-estate / community / reservations problem? Book a 30-minute call — I'll tell you straight if I can help.