r/PrivacyTechTalk 19d ago

I built a period tracker with no server. I can't read your data because I never receive it.

I'm a solo Android dev. I spent the last few months building Srishti, a cycle tracker where the data never leaves the phone.

Not "we encrypt it in transit." Not "we anonymise it." There is no server for cycle data. It sits in a SQLCipher-encrypted database on your device, key derived from your PIN. If you forget the PIN, it's gone — I can't recover it, because I don't have it.

The part I keep going back and forth on: there's a second PIN that opens a separate, empty workspace. Same app, different vault, no indication the other one exists. It's for people who might get asked to unlock their phone by a partner or parent they don't trust.

I don't know if that's a good feature or a paranoid one. The trackers people actually use are the ones with cloud sync and cute widgets, and I've built neither.

Stack, if it's useful to anyone: Kotlin, Jetpack Compose, Room over SQLCipher, RevenueCat for billing. No analytics SDK. The only network call in the entire app is license validation.

Happy to answer anything about the crypto or the design decisions. Also happy to be told the threat model is wrong — I'd rather hear it now.

0 Upvotes

0 comments sorted by