Skip to content
Back to home

Methodology

How we build products that do not need AI to run.

Four phases. AI does the heavy lifting while we build, so what you receive runs as plain software: the same answer every time, no live model call on the user path, no per-use AI bill.

The four phases

The workflow from raw idea to owned system.

  1. 01Spec before prompt

    Strategy

    Define the problem, the user, and the boundary of what we will and will not build. Write the rule we are going to ship, not the prompt that simulates one.

  2. 02Prototype judged by humans

    Design

    AI-assisted, human-judged. Stitch and Google AI Studio for high-fidelity prototypes; reviewed for hierarchy, accessibility, and brand fit before code starts.

  3. 03Agents execute explicit specs

    Build

    Claude Code and Codex write production code under explicit specs. Tests are part of definition-of-done, not TODO.

  4. 04Source and keys handed over

    Deploy

    Vercel for frontend, Railway for Python backends, Supabase for data and auth. Source code, brand assets, deploy keys, and operating notes are transferred.

Worked Example

The CRS Calculator, four hours, end-to-end.

IRCC publishes the Express Entry CRS scoring tables. They do not change. The calculator at /tools/crs-calculator is a faithful encoding of those tables in TypeScript.

  1. 0:00

    Pulled the CRS tables straight from the IRCC PDF. Claude transcribed each scoring section into JSON; we cross-checked against three sample profiles.

  2. 0:45

    Wrote the scoring functions: age, education, language (CLB), work experience, spouse adjustments. Each gets a unit test.

  3. 2:00

    Built the React form. Sliders for age + CLB, dropdowns for education + experience, and a result chip that updates on every keystroke.

  4. 3:30

    SEO meta + JSON-LD WebApplication schema. Sitemap entry. Plausible tracking on result computation.

  5. 4:00

    Deployed. Runtime path: browser compute, no model call per calculator run. Even if a million people use it tomorrow, the bill stays the same.

The artifact, running here

The calculator that timeline built.

Every keystroke below computes in your browser. No model call, no server round-trip - which is the whole cost model, demonstrated.

Personal information

Language scores

First official language (CLB)

Second official language (CLB)

Additional factors

IRCC removed CRS points for arranged employment on March 25, 2025, so this calculator does not add job-offer points.

The cost model

Deterministic vs. traditional, at scale.

Traditional AI product

$0.01 - $0.50

per interaction

Margins shrink with every user. AI bill grows with traffic.

Rules-first product

Near-zero

per interaction

AI builds the rules at design time. Runtime is pure compute.

Illustration at $0.05 per model call vs roughly $25 flat hosting. Arithmetic, not a quote.

Per-interaction AI product$2,500/moclimbs with every user
Rules-first product$25/moflat, at any traffic
AI billRules-first0 → 50,000 interactions

We use AI to build sophisticated rule engines, templates, and computation systems. Then they run forever at near-zero cost. You own everything. The slider above is itself a rules-first build: pure browser arithmetic, no model call.

Stack and tools

What runs where.

Every AI tool sits on the build side of the line. What ships is a conventional stack, boring on purpose. That is how the cost model holds.

Build timeAI, in our hands

Strategy + writing

Claude - ChatGPT - NotebookLM - Gemini Deep Research

Design

Stitch - Google AI Studio - Figma

Build

Claude Code - Codex - Antigravity (parallel agents)

Review + audit

Codex cold-eye audit - ChatGPT red team - GitHub Actions

RuntimeIn yours

Framework

Next.js 16 - React 19 - Tailwind

Data and auth

Supabase Postgres with row-level security

Hosting

Vercel for the front end - Railway for Python services

No model call on the user path. Where a feature is genuinely interpretive it is flagged, premium-only, and capped per user per day.

Send the break point