selected work
BMI Calculator
dev.valhalla.bmicalculator
A body-mass-index tracker that grew into a small health companion. It started as a single calculation screen and now covers daily habits — water, steps, sleep, breathing — without losing the thing people came for: a straight answer in two taps.
I wrote every layer of it. Jetpack Compose UI with Material 3 and a hand-built theme engine, Room and DataStore for local storage, WorkManager for reminders, and Health Connect for step data. Camera-based heart rate uses CameraX. Revenue comes from AdMob and a RevenueCat subscription that removes ads.
The most recent release cut the download to under half its previous size through R8 rules, unbundled ML Kit and bundle splits — a change users notice more than any feature.
- Instant BMI with an animated gauge and colour-coded WHO or DGE classification.
- Ideal weight range derived from height, age and gender, with progress tracking.
- Health dashboard — daily missions, water, steps, sleep and a Zen breathing screen.
- Heart rate measured through the camera using photoplethysmography.
- Metric, imperial and stones, plus 23 translated locales.
- Charts drawn on Canvas so history renders fast with no charting dependency.
toolkit
Android
- Kotlin & Java
- Jetpack Compose, Material 3
- Coroutines, Flow, ViewModel
- Room, DataStore, WorkManager
- CameraX, ML Kit, Health Connect
Backend
- Ktor, Spring Boot
- PostgreSQL, MySQL, SQLite
- REST API design
- Firebase — Auth, FCM, Hosting
- Vue.js admin panels
Ship & operate
- Play Console releases & policy
- Linux, Nginx, systemd
- DigitalOcean deployment
- Git, GitHub Actions
- AdMob & RevenueCat monetisation
about
I like the part of the job most people skip — the release notes, the crash logs, the 4 MB you can still shave off a bundle.
I work solo under the name Solo Valhalla Labs, which means I do the whole loop myself: sketch the screens, write the Kotlin, stand up the backend, handle the store listing, then read the reviews and go again.
Alongside my own apps I take contract work on Java and Spring Boot systems, mostly distribution and inventory platforms with real data behind them. I'm currently moving deeper into cloud and DevOps — the infrastructure side of shipping, rather than just the app on top of it.
- Based in
- Nugegoda, Sri Lanka · UTC+5:30
- Publishing as
- Solo Valhalla Labs
- Code
- github.com/rayanprasanna
- Open to
- Android contracts, backend work, remote roles
Let's build something.
Freelance work, a full-time role, or a question about one of the apps — email is the fastest way to reach me.
solo.valhallalabs@gmail.com