Building from Ghana · taking on new work

We build systems that run real businesses.

Software people use on a Monday morning — the till at the counter, the stock on the shelf, the case file that arrives over WhatsApp. Not demos. Systems that hold live data and cannot be down.

0

automated tests behind LegalFlow — including tests that prove one firm cannot reach another's files

0

lines of Dart at the counter, taking live sales and live stock every day

0

tables sealed by row-level security, so a missing filter returns nothing

Work

Four products.
Two of them carrying real weight.

All work →
01 · In dev

LegalFlow — AI Legal Operating System

Takes a law firm's intake over WhatsApp, files every document against the right case, builds the timeline, and flags where two documents contradict each other.

02 · Live

Francellen — point-of-sale & inventory

One Flutter codebase on the Windows till and on Android. Takes the sale, prints the receipt, moves the stock — in the same step. In daily production use.

03 · Live

Innotrend — inventory for small business

Mobile inventory systems for small businesses in Ghana, built for the phone and the connection people already have.

04 · In dev

AI systems

A new system in development, built the way LegalFlow does it: the model never touches the database, and the facts that matter are looked up, not generated.

What we do

Software, end to end —
design through deployment.

Systems

Business systems

Point-of-sale, inventory, credit, purchasing and expenses — and the reporting that turns them into a number the owner can act on, with roles so the right people see the right figures.

Apps

Mobile & desktop

One Flutter codebase across Android, Windows and web, built for the hardware people already own — including the awkward parts: thermal printers, offline moments, and a desktop window that has to read properly.

AI

AI that can be trusted

Intake, extraction, document understanding and grounded question answering — with the boundaries drawn first: facts from the record, citations verified, a human confirming anything that carries consequence.

Platform

Multi-tenant & delivery

Software several organisations share without ever touching each other's data — plus CI that builds every push and stamps each build with its commit, so "still broken" can be checked instead of guessed at.

How we build

The decisions
we would defend.

Most of the work in a real system goes into things nobody asks for in a specification.

01

Watch the software in the room it lives in

Profit and outstanding credit were the first thing on a home screen that faces the shop — visible to every customer at the counter. They moved behind a deliberate tap, owner only. Today's takings stayed, because that is what the cashier needs.

02

The system reports; the person decides

Contradictions carry a severity, never a verdict. Detected deadlines stay unconfirmed until a human confirms them. Software that is confident about the wrong Tuesday does real harm, and no amount of fluency makes up for it.

03

Isolation is enforced twice

Once in the application, and again in the database — where the app connects as a role that cannot bypass it. A query written without a tenant filter returns zero rows rather than somebody else's files.

04

Build for the hardware that is there

A till on a four-year-old C++ runtime, an 80mm printer whose cutter sits 15mm past the print head, a phone on a slow connection. The system ships what it needs alongside it — so nobody installs anything, and the receipt footer arrives intact.

Start a project

Tell us what the
business actually needs.

The ledger that takes an evening, the file nobody can search, the process that lives in one person's head. Describe it in plain language — we will tell you honestly whether software is the answer, and what it would take.

Please tell us your name.
That email address does not look right.
A sentence or two is plenty — tell us what is going wrong.

We read every message and reply ourselves. No newsletter, no sales sequence.

Message on its way.

Thanks — we will come back to you at the address you gave, usually within a day or two.