AshLabs
Independent studio

Mobile and web apps, built properly.

We build Android and web apps that work without a signal, keep your data on your device where they can, and get the arithmetic right — because the details nobody markets are the ones people notice.

Start a project See the work
3
products live in production
2
run entirely on-device — nothing uploaded
1
person, start to finish, on every one of them

What we do

Small enough that the person who designs it is the person who builds it, which is usually why things end up coherent.

Native Android

Kotlin and Jetpack Compose. Apps that follow the platform rather than fighting it, and that keep working when the connection does not.

On-device intelligence

Machine learning and OCR that run on the phone instead of a server. No upload, no API key, no cost per use, and nothing to leak.

Backends that hold up

Postgres with the access rules enforced in the database, not in the app. If the client is wrong, the data is still safe.

Interface design

Screens designed around the question somebody opened the app to answer, rather than around a list of features.

Web apps

The same product in a browser, sharing one source of truth so the two can never quietly disagree with each other.

Getting it shipped

Store listings, signing, privacy policies, data-safety declarations — the unglamorous half that decides whether anything launches.

Work

Three things live and running end to end, two more in the workshop.

Live · Android & web

SplitSnap

Point a phone at a receipt and it reads the individual lines, so a table can split a bill by what people actually ordered instead of dividing it evenly and arguing afterwards.

  • Receipts are read on the device — the photo is never uploaded
  • Splitting three ways never loses or invents a cent
  • Shared groups, balances and settling up across accounts
  • Works offline; syncs when there is a connection
SplitSnap Android app home screen showing recent expenses

Android app, live build

Live · Web & Android

Monitor

Your AI developer usage center. Coding assistants meter usage in ways that are easy to lose track of until a session cuts out mid-task — Monitor watches the limit for you and says plainly how much capacity is left, before you run out.

  • Tracks Claude Code usage today, more providers over time
  • Self-hosted backend — no third party sees your usage data
  • Android, Wear OS and web, one account across all three
Monitor Android app dashboard showing Claude Code 5-hour usage limit

Android app, live build

Live · Client site

Mayura Technical Institute

A bilingual site for a real vocational institute in Chennai, running since 1985 — Shorthand, Type-Writing and Computer Office Automation. Hand-coded, no framework, no build step, so it loads instantly and needs nothing kept up to date but the words on it.

  • English and Tamil, maintained as equal, complete versions
  • No invented courses, fees or testimonials — only what is real
  • Deployed on Cloudflare Pages behind the institute's own domain
Mayura Technical Institute website homepage

mayuratechnicalinstitute.com, live

In development · Android

Sayvia

A Thai⇄English speech translator that runs the whole pipeline — listening, translating, speaking — on the phone, with nothing sent anywhere. Built for the moment you have no signal and need to be understood anyway.

  • Translation engine verified against the reference model, offline
  • 70 unit tests and 20 instrumented tests passing
  • Not yet released — the microphone-to-speech path still needs a real phone in a real conversation before it ships
Sayvia app home screen, Thai to English, offline on-device

In development, unreleased build

In development · Android

Shrinkr

An offline image compressor, resizer and converter. No account, no upload — the photo never leaves the phone on its way to being smaller.

  • Compress, resize and convert formats entirely on-device
  • All ten build phases complete; not yet on the Play Store
Shrinkr Android app home screen showing compress, resize and convert tools

Android app, unreleased build

How we work

No account managers, no weekly status theatre. You talk to the people building it.

  1. 1

    Work out what it is

    A conversation about the problem rather than the feature list. Most projects get smaller at this stage, which is usually the point.

  2. 2

    Build the risky part first

    Whatever might not work — the model, the sync, the arithmetic — gets built early, while there is still time to change course.

  3. 3

    Ship it and keep it running

    Store submission, the compliance paperwork, and the fixes that only appear once real people are using it.

Got something to build?

Tell us what it is and roughly when you need it. You will get a straight answer about whether we are the right people for it.

Get in touch