$ ls work/

What we shipped, and what we learned shipping it.

Five pieces of work, each with the problem, the build, what went out the door, and the lesson. No borrowed case studies; if it is on this page, we made it.

Sightline

Live on Google Play · $7.99Android
Problem
A shooter photographs a paper target, then does the group math and the scope correction by hand, and keeps the range log in a notebook or an app that wants an account and an ad network.
What we built
Photograph the target, tap the holes, get exact scope adjustment clicks. An armory, ammo inventory with burn-rate projection, G1 ballistic DOPE cards, and a range log with CSV and PDF export. Everything on the device; it works miles from signal.
What shipped
Version 1.0 on Google Play at $7.99, one-time. No account, no ads, no subscription. The Play data-safety label reads "no data collected" because that is what the app does.
What we learned
Before the public build we audited every permission the app requested and removed the ones it did not need. A privacy claim is only worth making if the manifest agrees with it.
Sightline: photographed target with shot group and scope correction
Sightline: ballistic DOPE card
Store panels, real screens

LaunchPad

Live on Google Play · FreeAndroid
Problem
People preparing to enter the Air Force were piecing together fitness standards, ASVAB practice, and the pre-ship checklist from forums, PDFs, and apps that were paywalled, out of date, or both.
What we built
One app: fitness tracking against the standards, ASVAB practice with a skill map by subtest, and the checklist that runs all the way to ship day. Built by a veteran for the next people putting on the uniform.
What shipped
Free on Google Play, with a single banner ad and no subscription. The app's own site runs at launchpad.djeango.com.
What we learned
Getting the facts right matters more than the feature list. Standards change; the app has to be maintained like a reference, not a launch.
LaunchPad app screen
Promo cut and a real screen

The Self-Hosted LLM Kit

On GumroadFree to $149
Problem
Running a capable language model on hardware you own is cheaper and more private than renting one, and almost every guide about it assumes you already know how.
What we built
What started as a single homelab guide became a four-tier kit: Builder (pick parts, first run), Operator (a hardened server, three ready-made builds), Architect (Mac, PC, and server in sync), and the Full Stack (dashboard, memory, one assistant). A free Fit Check tells you what your machine can run before you spend anything.
What shipped
Five tiers on Gumroad, from free to $149, with config packs and scripts that were run before they were written up. Existing buyers got the refreshed Builder tier at no charge.
What we learned
The kit is credible because the studio runs the same stack. Every command in it carries three plain lines: what it does, what you should see, and what to do if you do not.
The Self-Hosted LLM Kit
Build video and product art

The AI visibility audit method

Method documentedService, $500
Problem
A local business owner cannot tell whether ChatGPT, Gemini, Perplexity, Google AI Overviews, or Copilot mention them, name a competitor instead, or get the facts wrong. Agencies answer with a sales deck.
What we built
A repeatable evidence method. Thirty client-approved buyer questions, run across five engines, each twice, logged out. Three measured rates (visibility, citation, accuracy), a competitor table, a cited-source tally, a technical readiness check, and a fix list split into what you can do yourself and what needs ongoing work. Every answer is kept verbatim in an appendix.
What shipped
The method, the branded report template, and the audit as a fixed-scope service. The first audits run entirely in house.
What we learned
We have no client results to show yet, and we will not publish typical-improvement claims until we have measured enough audits to mean it. The evidence is the product.
$ audit run --queries 30 --engines 5 --passes 2
chatgpt ......... 60 answers logged
gemini .......... 60 answers logged
perplexity ...... 60 answers logged
ai-overviews .... 60 answers logged
copilot ......... 60 answers logged
>>> visibility / citation / accuracy rates
300 logged answers per audit

SOPSignal

In developmentBuilt in public
Problem
Teams lose track of who owns a procedure, when it was last reviewed, and whether anyone would notice if it went stale. The fix usually means moving the procedures themselves into yet another tool.
What we are building
A metadata-only layer: source links, owners, review cadence, and decision history. Never the procedure contents, never credentials, never customer data. Point it at where your procedures already live.
Where it stands
Local prototype with fictional data. 104 unit and 122 integration tests pass. Builds run on a schedule in GitHub Actions, one pull request per run, and the build never merges its own work; a person does.
What we learned
A ledger that cannot be edited by the thing it judges is worth more than a faster build. The workflow that runs the build is not allowed to touch the workflow file.
$ npm run check
lint ............ ok
typecheck ....... ok
unit ............ 104 passed
integration ..... 122 passed
>>> opening pull request build-run/
Nightly run, never merges itself
For marketing services we have no client results to show yet. Every scope is written, every number is measured by us, and you own the accounts. That is the offer, and we would rather say it plainly than show you someone else's numbers.