Builder & growth marketer · Bengaluru

I build software that respects your time, your data, and your wallet. Then I make sure it gets found.

I'm a solo, self-funded developer and growth marketer. I ship small, useful products: Mac apps and developer tools that work offline, keep your data on your own machine, and charge you once instead of every month. I also do the growth work behind them: positioning, AI visibility, and go-to-market.

Two disciplines, one operator
product building and growth marketing

Local-first by default

Your data stays on your machine. No account, no server, no monthly fee.

Illustration of a warm desk nook by a window with a lamp, an open notebook, and a steaming mug
One founder, one desk Self-funded since day one

The approach

Small software, built honestly, sold once.

Most software today is rented, not owned: a subscription for a timer, a cloud account for your own notes, a dashboard that needs a server to draw a chart. I build the opposite. Every product here is self-funded, ships without a required account where possible, and says plainly what it does not do.

The other half of the work is growth. I market the products myself, so the page you are reading is also the case study: AI-visibility tooling, content systems, and go-to-market experiments, all running on products I own and can change in an afternoon.

If a feature would need a monthly fee to keep working, it usually doesn't get built. That constraint is what keeps the products small.

0
Repositories across four languages
0+
Products shipped and live
0
Crafts: building and growth marketing
0
Founder, and zero investors

Buy once, own it

The Mac apps here are one-time purchases. No seat meters, no price hike at renewal, no account that can be closed on you.

Illustration of a circuit board with a shield and a plane arcing over a signal path

Plain about limits

Every product has a stated list of what it deliberately does not do. The roadmaps leave things out on purpose.

Illustration of invoices passing through a validation gate into a ledger

Why I build this way

Validation is the product, not a feature.

The through-line in the work below is the same idea, whether the product is a clinical scribe or an invoice extractor: a tool that proves its own output is worth more than a tool that merely produces output. Show the source. Block what can't be proven. Never guess into someone's books, notes, or wallet.

Proof over promise

Every claim traces back to shipped code.

Fail closed

Missing data stops the run, never fills a guess.

Runs offline

Network is an option, not a requirement.

Honest pricing

One-time where it scales; per-use where it costs.

Browse the catalogue

Selected work

Everything built, nothing inflated

Twelve live products and tools, each with a real domain or repository. The icons below are the actual app icons. Nothing here is a mockup of a product that doesn't exist.

There are 37 more repositories on GitHub: tools, experiments, and the occasional dead end.

See all repositories

Two in detail

How the local-first idea actually ships

01

owntime: a time tracker you buy once

Time tracking and invoicing for solo consultants and small agencies, built as a native Mac app. The database is a single SQLite file on the user's machine, backups roll locally every few hours with optional mirror to the user's own cloud bucket, and invoicing prints to PDF without a server. One $99 license covers three people; six-person studios buy two.

Live · owntime.click Tauri · Rust · React
Visit owntime
Illustration of a warm desk nook with a notebook and lamp, representing solo consulting work
02

EntryLedger: nothing wrong reaches Tally

Scanned GST supplier invoices (photocopies, phone photos, skewed PDFs) become Tally-import-ready vouchers. The mechanism is validation, not extraction: GSTIN checksums, HSN lookup, arithmetic closure, and regime consistency all run before anything exports. What can't be proven goes to a human with the scan and the reason. The pilot promise is binding: 85% automatic by day 30, or the pilot is free.

Live · entryledger.shop Django · Next.js
Visit EntryLedger
Illustration of invoices passing through a validation gate into a ledger

How it gets built

One person, four habits, no standup.

Everything on this page was written, designed, shipped, and supported by one person. That's only possible because the loop is small: find a real friction, build the narrowest thing that removes it, ship it, and keep the evidence of whether it worked.

Illustration of a circuit board and shield representing the build loop

Find the friction

Each product starts from a bill I was paying or a task I was doing by hand.

Keep it narrow

A short continuation at the cursor, not a general assistant. Scope is a feature.

Ship with evidence

Benchmarks, public track records, and honest failure modes in the docs.

Own the consequences

If a product can't justify its own cost, it doesn't ship as a subscription.

Building something that shouldn't need a server?

I take on a small amount of independent work: local-first Mac apps, developer tools, and honest integrations. If the problem is narrow and the data should stay put, we'll get along.

Start a conversation