Read every line. Export your data. Run it yourself.

GoodStrata is Apache-2.0 open source, top to bottom. The self-host floor is PostgreSQL and one Node process. With a local model, your building's money, minutes, and maintenance never leave hardware you control.

Apache-2.0: the whole platform, not a teaser

GoodStrata is released under the Apache-2.0 licence: permissive, commercial-friendly, and applied to the entire codebase, not an "open core" shell wrapped around a paid engine you can never see. The finance agent, the arrears ladder, the levy apportionment, the decision gates, the event log, the whole web app: it's all on GitHub, and you can read it, fork it, run it, or audit the money math yourself. This matters most for the part that handles your building's cash. Levy apportionment, penalty interest and payment reconciliation are deterministic, tested functions. Because the source is open, "the LLM never computes money" is a claim you can go and verify line by line, not one you have to take on faith.

  • Licence: Apache-2.0: permissive, whole platform, no open-core catch.
  • Source: github.com/goodstrata/goodstrata
  • The end-to-end test drives a full building (onboarding to AGM) in a real browser on every commit.

The self-host floor: Postgres and one process

The entire platform runs on PostgreSQL and a single Node process. One command, docker compose --profile app up --build, brings up a database and one container, and you have a working owners corporation. No Kafka, no Redis cluster, no queue service, no managed-cloud dependency to sign up for; the append-only event bus is just Postgres with LISTEN/NOTIFY. And every paid integration ships with an offline default, so you can run a complete building with zero external accounts and zero recurring bills: email falls back to a local sink (or your own SMTP server), payments to a manual rail, hosted AI to a local model. Nothing about the free path is crippled: it's the same code the managed service runs.

  • Email → a console sink by default; point it at your own SMTP server (or SES) for real delivery.
  • Payments → manual reconciliation instead of the hosted NPP/PayID rail.
  • AI → a model on your own machine instead of a hosted API.

Your building's data never has to leave your hardware

GoodStrata runs local LLMs through Ollama. Set AI_PROVIDER=local, point it at a model like Qwen3-30B-A3B, and every agent (finance, maintenance, meetings) runs on your own machine with no API key and nothing sent over the wire. We built for the most paranoid deployment first and then proved it: a full month of a 12-lot building, arrears chased to the cent, a roof leak triaged and dispatched, minutes drafted, all on one MacBook with no cloud AI at all. For an owners corporation that isn't a nicety: owner names, ledgers, arrears histories and disputes are exactly the data you don't want sitting on someone else's server. Self-host, and it simply doesn't.

"No lock-in" is a checkable claim

Every platform promises no lock-in. Open source is what turns the promise into a property you can actually check, three ways. You can read the code, so there's nowhere to hide a trap. You can export your data: it's your Postgres, holding your ledger, your append-only event log and your documents in open formats you can take anywhere. And you can run it yourself, because the licence says you can, forever. If GoodStrata ever changed its terms, raised a price, or shut down tomorrow, a self-hosted building keeps operating on the last commit without missing a levy. That's the difference between being told you're not locked in and being able to prove it.

  • Read the code: nothing hidden, including the money math.
  • Export your data: ledger, event log and documents in open formats.
  • Run it yourself: the licence guarantees it, permanently.

Who self-hosts, and who shouldn't bother

Self-host is for the privacy-conscious owners corporation that wants its records on hardware it controls, for the technical owner who would rather run one process than pay a manager, and, honestly, for everyone else as well, because it's the receipt. The managed service runs this same open code, so self-host being real is the proof that the hosted version has nothing to hide. But most buildings don't want to run a server, and they shouldn't have to. If that's you, skip the terminal entirely.

For everyone else, we'll host it

The hosted service is the same open code, run for you, and it's free for owners corporations. It takes nothing from your levies, because your levies never pass through it: owners pay the owners corporation's own bank account, exactly as they do today. No hidden insurance commission, and never a kickback for the contractors our agents surface; the committee always chooses on the evidence attached, and every dollar sits on the audit log. And because it's the same open platform underneath, the exit is built in: if you ever want your data on your own hardware, export it and self-host. The door is open by design.

What it actually takes to run your own.

  • Apache-2.0: permissive, and it covers the whole platform, not an open-core shell
  • Postgres + one process: the self-host floor. No Kafka, no Redis, no managed cloud
  • One command: docker compose --profile app up --build brings up a running building
  • AI_PROVIDER=local points the agents at a model in Ollama: no API key, no data over the wire
  • Offline defaults for every paid integration, so you can run with zero external accounts
  • Open formats: export your ledger, event log and documents any time you like
  • Proven: a month of a 12-lot building ran on one MacBook with no cloud AI

Read the source, or skip the server.

Read the source at github.com/goodstrata/goodstrata, or let us host it, free for your owners corporation, at goodstrata.com.au.