← Selected work

Case study · Product build

We didn’t build a site for a
software company. We built the software.

PrinterFlo is a complete management system for print and sign shops — quoting, production, proofs, payments and accounting — designed, built, launched and run in-house. It is the largest thing in this portfolio, and the clearest answer to the question every prospect eventually asks: can you actually build the hard part?

Role
Product, design, engineering, go-to-market
Type
In-house SaaS product
Status
Live, with paying shops
The PrinterFlo production board, showing jobs moving through quote, proof, production and paid stages

The problem

A trade running on spreadsheets, whiteboards and text threads

Most sign and print shops track work across a whiteboard, a shared spreadsheet and a lot of texts. The software that exists for them is either priced per seat — so the shop is punished for putting more people on it — or gated behind a sales demo before anyone can even see it. Quoting is the worst of it: prices come out of experience and gut feel, and whether a job actually made money is discovered months later, if at all.

The brief we set ourselves was narrow on purpose: the shop should be able to run the whole job on one board, and know the margin on every line while quoting it. Everything else follows from that.

What we built

The whole job, start to paid

Quoting that knows its own margin

Materials-based pricing with cost, price and margin on every single line. Most shops quote from a spreadsheet and find out how they did at year end.

A production board that matches the floor

Drag-and-drop stages a shop configures itself, rather than a fixed pipeline borrowed from a software company’s idea of how printing works.

Proof approval and payment in one link

The customer opens a link, approves the artwork and pays the deposit. No account, no login, no chasing.

Money that goes to the shop

Stripe is connected to the shop’s own account, so payments land in their balance — not ours, not held, not swept. The integration is listed in Stripe’s own App Marketplace.

Accounting that stays honest

Invoices, customers and payments sync to QuickBooks Online as they happen, with matching numbers and per-line tax codes.

Orders from wherever they arrive

Shopify and WooCommerce orders land on the production board automatically. A public API and a Zapier app cover everything else.

Artwork checked before it prints

Uploaded files are inspected in the browser for resolution, colour mode and bleed — the checks that otherwise become reprints.

A storefront the shop owns

Customers browse, order and reorder from a catalogue priced by the shop’s own engine — never a second, drifting copy of it.

How it’s built

Boring where it counts

Nothing here is exotic. It is the stack we would put behind any serious product, chosen so it can be maintained years from now.

Application
Next.js + Supabase (Postgres, auth, row-level security)
Payments
Stripe Connect — each shop connects its own account
Marketing site
Astro, static, no framework on the page
Hosting
Netlify, serverless functions for the AI and lead endpoints
AI
Claude — design generation, an in-app assistant, a support bot

Beyond the app

Building it was half the work

A product nobody finds is a hobby. The same studio built the demand side: a static marketing site with programmatic SEO across competitor comparisons, vertical pages and integrations; a set of genuinely free tools — a channel letter designer that exports real cut files, a sign price calculator, a print file checker — that shops use whether or not they ever buy; a WordPress plugin published to the wordpress.org directory; and a community forum on its own domain.

That is the same lead engine we build for clients, pointed at our own product first. The first paying shop arrived through organic search, not outreach — we checked the search data against the outbound lists before claiming it.

Where it stands

Live, honest numbers

Most studios show you websites.

We ship products — auth, payments, accounting sync, APIs, the parts that are genuinely hard and genuinely boring. If what you need is closer to software than to a brochure, that is the work we like most.