Skip to content

One workspace for pages, sales and follow-up.

Funnels and websites, checkout, CRM, automations, email, reports and a member area share one database. Here is what is in it and how it is put together.

Who sits where

An installation has a platform owner. Below the owner sit operators, below an operator agencies and businesses, below an agency its client workspaces. Branding is inherited downward, and the closest level wins.

  • A workspace holds one business: its funnels, contacts, orders and team
  • An agency manages client workspaces with staff assignment and time-boxed support access
  • An operator sells plans to agencies and businesses under its own brand
  • The platform owner issues licenses and sees operating costs and margins
Agency control center: An agency with its client workspaces, usage and limits.
An agency with its client workspaces, usage and limits. Real screen, example data.

How it is built

Separated by the database

Every tenant table has row-level security in PostgreSQL. Tests prove that one workspace cannot read or write another's rows, even with a bug in the application code.

Work happens in the background

A job queue in PostgreSQL runs emails, workflows, webhooks, reminders and sweeps with retries, backoff and a visible failed state. A heartbeat shows the worker is alive.

Plain, portable stack

Next.js, TypeScript and PostgreSQL 17. One Docker image runs the app and the worker; Caddy issues certificates for customer domains. No proprietary cloud service is required.

Nothing stored as HTML

Pages are validated documents rendered by the application. Custom code runs in a sandboxed frame and needs its own permission.

Audited where it matters

Publishing, exports, support access, license changes and permission changes are written to an audit log per organization.

Moves between installations

A workspace exports with its files and imports on another installation, without passwords, sessions or provider credentials.

More in the installation guide and the implementation status.

See it with example data, then build your own.

The demo opens a complete workspace: funnels, contacts, orders, a running A/B test. Nothing to install, nothing to sign.