Caleb Lanting
LedgR

A calm CRM for small financial-advisor firms.

LedgR keeps a firm's clients, pipeline, follow-ups, emails and texts in one place, at the desk and on the phone. It's made for one advisor and an assistant, not a fifty-person sales floor.

Role
Solo: product, design and build
Status
Live by invitation. iPhone and Android apps in store review
When
October 2026
Built with
React, TypeScript, Firebase, Capacitor, Claude
A made-up firm and made-up clients. No real data.Try the live demo

The problem

Small advisory firms run on memory, sticky notes and a spreadsheet. The big CRMs are built for sales teams: dozens of fields, dozens of screens, and an advisor who stops opening them by March.

What a one-advisor firm actually needs is short: who to call today, what was said last time, and what's moving in the pipeline. The assistant needs the same view, with fewer powers.

What I built

One web app that runs on the desk, and the same app wrapped for iPhone and Android.

  • Today, at a glance

    Follow-ups due and overdue, clients who've gone quiet, and the pipeline total on one screen. Tick one off and it's logged.

  • Every conversation on one timeline

    Gmail, texts from the advisor's own cell and notes all land on the client's page, kept exactly as sent. A small Mac helper and an Android app bring the texts in.

  • A pipeline you can drag

    Leads move through stages by drag on the desk and by swipe on the phone, with column totals that keep up.

  • Owner and Assistant

    The owner decides what the assistant can do. Every firm is walled off from every other by the database's own security rules, with 147 tests that try to get through.

The hard part

Say it once, and LedgR remembers.

An advisor types a note like talked through the rollover, call him in two weeks, and LedgR offers the follow-up and the next pipeline step by itself. Getting that right without making it slow, costly or risky took two layers.

Rules on the device go first. They're instant and free, and nothing leaves the phone. Most notes stop here.

Only when the rules find nothing does the note go to Claude Haiku, after a short pause in typing, through one forced tool call with a cached prompt. That costs about a hundredth of a cent per note. Every field that comes back is checked in code: a real date within two years, a plain-text title, a pipeline step that only moves forward. The advisor still decides, and if anything fails, the note simply saves as typed.

I chose the model with a test. On 40 messy test notes, Haiku read 38 correctly in under a second. Sonnet got 27 and took more than twice as long. Both ignored a planted note that told them to wire $50,000.

Try a note
TMTheo MarchettiProspect · Contacted · $350K
How it was read
1
Rules on this device
2
Claude Haiku
Checked in code
A real date within two years
A plain-text title
Pipeline only moves forward

In the app, notes the rules can't read go to Claude Haiku. Here, those answers are saved ahead of time.

By the numbers

~4days from first commit to both app-store submissions
312commits
437automated test cases, 147 of them on the security rules
38/40test notes read correctly by the AI note reader
100Lighthouse score on mobile for every marketing page

From the project's git history, test files and its note-reader eval, October 9, 2026. Lighthouse from saved reports of October 6.

Stack and role

I did all of it myself: the product calls, the design and motion, the pricing, and the review of every change. AI coding agents wrote the code from my specs, and I reviewed, tested and shipped it.

React 19TypeScriptViteTailwind CSSFirebase AuthFirestoreCloud FunctionsStripeCapacitorSwiftJavaClaude HaikuVitestPlaywright

Want to build something together?

I'm looking for a team to build with full time. Email is the fastest way to reach me.