Platform architecture

EVERJUST is a multi-tenant business platform built on a debranded fork of an open-source ERP framework. This page is the map.

NginxWildcard TLS · routes each subdomain
Application serverOne binary · serves every workspace
PostgreSQLOne database per workspace · fully isolated

The control plane sits alongside, provisioning workspaces and handling signup, billing, and DNS.

The pieces

  • The application server. One binary serves every workspace. It loads modules (apps) from the addons path and serves the web client.
  • PostgreSQL. One database per workspace, fully isolated. The subdomain selects the database.
  • Nginx. Wildcard TLS and subdomain routing.
  • The control plane. A separate service that provisions workspaces, handles signup and billing, and automates DNS. It is not part of the application server — it orchestrates it.

Multi-tenancy

Every company gets its own database. A database filter binds each subdomain to exactly one database, so workspaces can never see each other's data. One set of code, many isolated databases.

Custom apps

Branding, theming, onboarding, telephony, and document management are themselves modules in the addons path. Yours go there too. Modules declare their dependencies and can auto-install when those dependencies are present, so a satellite app activates only where its base app exists.

Where things live

Concern Where
Apps (modules) the addons path
Workspace provisioning, billing, signup the control plane
Deployment (Compose, Nginx, server config) the deployment directory

The stack underneath

EVERJUST builds on a mature open-source framework: a Python ORM and server framework, a reactive JavaScript web client, and QWeb templating. The Reference covers each. Where this fork differs from the upstream framework, the reference notes it.

Need a hand with this? company@everjust.co — a human answers.