Longa
Training plans that adapt to how you actually ran
- Solo, end to end
- Live on the web
- Plan engine runs on the device
A running app that rewrites next week around what you actually did.
Open project →Everything I've built and can show. Newest first.

Training plans that adapt to how you actually ran
A running app that rewrites next week around what you actually did.
Open project →
Condominium management for admins and residents
A web app where the admin runs the building and residents pay the monthly fee via Pix.
Open project →
São Gonçalo's official gazettes, made searchable
Splits São Gonçalo's official gazettes into searchable acts, tracks City Council bills, checks each company against other public data and emails alerts.
Open project →Tell me about the role or the project. I usually reply within a day.
Thanks. I'll get back to you soon.
This site sets no cookies and runs no analytics.
The language lives in the page address. Nothing is stored in your browser.
The contact form sends your name, email and message to my inbox. I use them only to reply, and I delete them on request.
Training plans that adapt to how you actually ran
Most training plans are static. Skip runs and the schedule ignores it. Longa builds a plan from a short assessment and, when you log an incomplete long run, a lost week or an injury, rewrites the weeks ahead with less volume and hard sessions turned easy. It never touches the current week or the race date.
I built it solo, end to end: an Expo/React Native app that runs on web and Android, a Go API on Fly.io with Postgres, and a dependency-free TypeScript plan engine that runs on the device. Every change explains itself in plain language, so the runner knows why the week looks different.
It also records runs by GPS with a map, imports from Health Connect, syncs local-first with last-write-wins and bills through Stripe, in three languages. It's live on the web and still pre-launch: Android passes the end-to-end suite but isn't in the store yet.