Bito

One tap.
Done.

The habit app that won't steal your time. Lives entirely on your phone: no accounts, no cloud, not one line out to the internet.

Version 1.0.0 · Android 8.0 or later · 100% free, GPL-3.0-or-later

The name has a trick

Bito + Habi = habit

That's not a coincidence: in Spanish, hábito is built from Habi and bito. Neither works without the other, same as any habit.

Logging that you did it shouldn't be another task.

Three ways to log it. Two of them don't even ask you to open the app.

From the home screen

The widget shows today and logs with one tap, no need to go anywhere. Care about just one habit? There's a small widget just for it.

From the notification

The reminder comes with the button built in. Tap it and it's logged, nothing else to unlock.

In the evening review

One screen at day's end to close out what's left. Seal the day and that's it.

What it does

The Today screen: the date, a message from Habi, the "2 of 7" progress ring, and the pending habits, each with its quick-log control.
A habit's stats: a 130-day streak next to its record, the available freezers, and the month's calendar with completed days marked.
The Habi screen: the mascot wearing the Sargento face, its message of the day, the personality selector, the points earned, and the store where they're spent.

Screenshots show the Spanish build; the app is fully translated.

Streaks that don't punish

Missing a day doesn't erase a month. Freezers cover the impossible days, and you can backdate an entry when you remember late.

Amounts, durations, and things to quit

Eight glasses of water, twenty minutes of reading, or one more day without smoking. Each type logs its own way.

Reminders in the voice you pick

The nudge changes tone by time of day and by which voice you picked. Mornings, it sets up the day; nights, it helps close it.

Real badges, real stats

Heatmaps, records, and badges that earn themselves. The numbers are there to show how you're doing, not to show off anywhere.

Habi with the Sargento face: eyebrows angled inward, two strokes under each eye, and a half-smile. Habi with the Cheerleader face: large eyes with a double highlight, rosy cheeks, and an open smiling mouth. Habi with the Neutra face: round eyes with a highlight and a mouth in a soft curve.

Habi's no decoration.

Habi's face shows your week, dents like jelly right where you touch it, and follows you with its eyes. You dress Habi in the points your consistency earns, and Habi speaks in the voice you pick.

Try it: pick a voice

The same week, told by Sargento

“Acceptable. We both know you've got more.”

Demands out of belief in you. Short sentences, zero filler — praise lands dry, like it was already expected.

The same week, told by Cheerleader

“Good week. And the next one? Even better!”

Celebrates big when it's big, and stays close on bad days. Never sugarcoats a slip.

The same week, told by Neutra

“A steady week. Keep going.”

States with precision, always leaves a small door open. Warm in a low voice, not one exclamation.

You pick it at the start and change it anytime. The face changes too: watch the eyes, eyebrows, and mouth.

The crown jewel

No cloud: so what if you lose your phone?

That's why backups aren't a setting buried in Bito: they're part of the engine. Every backup carries everything —habits, entries, streaks, points, badges, and whatever Habi is wearing— and goes to the folder you pick. An SD card, a USB drive, a folder some other app syncs for you. Wherever you say.

Plain and legible

A JSON file you open in Notepad and understand. Your data doesn't come back in a format only Bito can read.

Encrypted, locked tight

Set a password and the file turns unreadable, even to Bito. Without that password there's no way back — and that's exactly the point.

While you sleep

Automatic backups happen and rotate the latest ones, with nothing for you to remember.

No-surprise restore

Before touching anything, it shows what's coming in and what's changing. You decide, facts in hand.

Encryption

Password to key Argon2id 19 MiB of memory, 2 passes. OWASP's recommended level for mobile.
From content to file AES-256-GCM 128-bit tag: if anyone touches a single byte, the backup refuses to open.
Future-proof The parameters travel inside Every backup records how it was encrypted, so one from two years ago still restores.

Whoever wants to look inside

Inside

Bito doesn't ask you to take its word for it. The code is all out there, and the privacy promise checks out in one line.

962 tests passing on every change
0 Google Play Services dependencies
4 permissions, none for internet
100% of the code, GPL-3.0-or-later

Verify it

The app can't send your data anywhere, because it doesn't declare the permission to. Clone the repository and run this:

grep -o 'android:name="android.permission[^"]*"' \
  app/src/main/AndroidManifest.xml

Four show up: notifications, exact alarm, boot, and vibration. INTERNET isn't there — without it, no network works.

How it's built

Language
Kotlin 2.1
UI
Jetpack Compose
Widgets
Glance 1.1
Data
Room · 9 tables, schema v1
Min
Android 8.0 (API 26)
Mascot
Vector, hand-drawn in Canvas

Works the same on GrapheneOS. Streak, point, and mood logic lives apart from Android and tests itself.

What Bito will never do

A feature list can change whenever it's convenient. This can't: it's the app's shape, and the license protects it.

  • Neverask for an account or an email
  • Neverupload your data to a cloud
  • Neverhave ads
  • Nevertrack what you do inside
  • Neverdepend on Google services
  • Nevercharge for a feature you already had
  • Nevergrow by popular vote: Bito is designed to solve one concrete problem, not pile up features someone requested. It listens to what's broken, not the wish list.

The road ahead

Bito starts with habits because that's where friction shows the most. But the idea underneath is wider: a calm place for everything that's hard to start, with Habi along for it.

A habit that won't start and a task you've dodged for three weeks fail for the exact same reason. Bito already handles the first. The second comes next.

It's a direction, not a calendar. None of this has a date on it.

What's next

Store publishing

F-Droid, Google Play, and whatever else it takes. So nobody has to explain what an APK is.

Procrastination, tasks

The thing that's been on your list for a month and isn't a habit. The problem's other half.

More surprises ahead…

Habi's just getting started.

Start with one.

Installs in a minute and won't ask for anything in return. Not now, not later.

Download Bito 1.0.0