Start with the problem in front of you.
Each of these is the same application underneath, so starting with one doesn't mean rebuilding when you add the next.
Your website, connected to your customers When the site is hard to change
Update pages, posts and events yourself, in your own brand, with every enquiry and sign-up landing in one place instead of someone's inbox.
Run your business from one place When five tools don't agree
Contacts, sales, bookings, payments and invoicing in the same application as your website, with one record per customer from the first enquiry to the paid invoice.
Launch your own platform When you're building a product
Accounts, permissions, payments and the deployment already exist and run in production, so your budget goes on what makes your platform different.
Keep it running When it's live
Licence, support and hosting as three separate agreements, priced separately and cancelled separately, with the platform underneath maintained and upgraded by us.
Every part of the business working from the same records.
Most small businesses run a website builder, a CRM, an email tool and invoicing as separate subscriptions, each with its own copy of the customer list. We build them as one application on one database, so a customer is entered once and every part of the business sees the same record.
Six platforms, one application
Every layer is built from components running in our own production deployment. Hover, tap or tab a platform to see what is inside it. All six run as one Django application on one PostgreSQL database, on infrastructure you control.
Hover a layer · or use the buttons above
Server — infrastructure you own
The foundation every deployment stands on: one Compose stack on infrastructure you control, with a single PostgreSQL database underneath every layer above it.
Content — Pure CMS
Your website as structured, reusable content — typed blocks rather than pages of HTML, plus the brand context an AI agent reads from.
Dashed = built with test coverage, not yet wired up in production.
Business — Pure CRM
Contacts, pipeline and cases running beside the site rather than in a separate subscription — one record per person, because the website visitor and the CRM contact are the same Django user.
Crosses the boundary from outside: Email delivery.
Payments & accounting
Take money and keep the books straight — card payments, agreements and recurring plans, with the ledger synced to Xero instead of re-keyed into it.
Crosses the boundary from outside: Card gateway · Accounting.
AI & integrations
Governed agents grounded in your own data, acting only through a deny-by-default, audited boundary — and the outside services that reach the application across it.
Crosses the boundary from outside: Model providers · Automation.
Dashed = built with test coverage, not yet wired up in production.
Custom apps — what makes it yours
Where a deployment stops being generic: bespoke apps and swapped models layered on top of the proven core. Customisation happens through model swaps and settings — never a fork of the libraries.
A system that fits you, on ground that's already proven.
Your records, on infrastructure you control
Contacts, content, invoices and documents live in one database that nobody else holds a copy of, and there's no kill switch in your application.
Shaped to how you work
Where your business is standard you keep the defaults. Where it isn't, we change the records themselves, adding the fields and relationships your industry needs.
Proven in our own business first
This website runs on the same platform. Every feature runs in our own production deployment before it reaches yours.
AI that works from your own records
Because your content and customers share one database, an assistant can answer from your own business, seeing only what the person using it is allowed to see.
Your data, your infrastructure and the code written for your business are yours. The Pure Stack platform underneath is licensed to you, with the option to buy it out, and we'll put both in writing before you commit.
We start with your project, in writing.
Tell us what you want to build and answer nine quick questions. You see a first read straight away, then we send you a written project brief and talk it through on a free thirty-minute call. If what we build fits, we'll tell you what the next step costs. If it doesn't, we'll say so.
That next step is Project Discovery, at $900 plus GST: your detailed brief, your data model, and your project generated and shown to you. The $900 is credited against the build if you go ahead.
How most projects run
Your project brief
Free. You describe the project, and we write it up and send it to you.
A discovery call
Free, thirty minutes, to talk the brief through with the person who'd do the work.
Project Discovery
$900 plus GST, credited against the build. Your detailed brief, your data model, and your project generated and demonstrated.
Your application
Built from that brief and quoted from it, once we understand your records.
Kept running
A licence keeps the platform maintained and upgraded. Support and hosting are separate agreements you can take or leave.
Platform work adds a longer scoping conversation after the call, and its discovery is quoted rather than fixed.
Check the detail before the call.
How the application is put together and what leaving involves, written for whoever is checking on your behalf.
Tell us how your business runs.
A written brief and thirty minutes, free. Bring whatever is getting in the way, and we'll tell you whether what we build fits it.