services
Five ways of making, and how an engagement actually runs.
Software & Web
Marketing sites, web applications, and the APIs and databases behind them. We work in TypeScript on Postgres and serverless infrastructure, with authentication, payments, and row-level security handled properly rather than bolted on at the end.
Data & Internal Tools
Data pipelines, automated quality checks, dashboards, and the internal tools that never come off the shelf. If your team is running the business out of a spreadsheet and three browser tabs, this is the work.
AI Systems
Model pipelines, agent tooling, and Model Context Protocol servers that let an assistant drive real software rather than just describe it. We build these for our own products first, so you are not the experiment.
Games & Interactive
Systems design, prototyping, and production for playable projects. We are building JiJinia Tactics ourselves, so we spend our own time on the same problems.
Audio & Video
Original music and scoring, produced video, and the pipelines behind them. We built Riposte for this work and use it every day.
HOW AN ENGAGEMENT RUNS
Scope
A call and a short written scope: the problem, what done looks like, a fixed price or a rate, and a date. No discovery phase you pay for twice.
Build
You see working software early and often, in an environment you can click through. Direct access to the person building it, not an account manager.
Hand over
You get the source, the infrastructure, and the documentation. Everything runs on accounts you own. Ongoing support is optional, never a hostage situation.
HOW WE USE AI
We build with AI in the pipeline, and we are direct about what that means. It lets a small operation take on work that would normally need a much larger one, and it moves quickly enough that we re-evaluate our tooling constantly.
What it does not change: someone is accountable for every line that ships, the architecture is deliberate, and the code is reviewed before it reaches you.
Good fits
We do our best work on small, well-defined projects with a real decision-maker involved: a tool your team needs, a product that needs building end to end, or a system that has outgrown the spreadsheet it started in.