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.
Condominium management for admins and residents
I built it for a real small building. The admin registers apartments and residents, issues the monthly fee, records expenses with their proofs and sends notices. Residents see their receipts, pay via Pix, upload the proof and follow the building's balance.
The ledger is keyed by apartment rather than by person, so a resident can move out and the unit keeps its whole history. It's TypeScript end to end: React 19 on Cloudflare Pages, a Hono API on Fly.io, Postgres on Neon and proofs on R2. Everything scales to zero, so it costs about nothing to run.
I built it feature-first, with lint enforcing the boundaries in both apps, and test-first the whole way: 900+ tests behind an 80% coverage gate, Playwright end to end in CI, and a check that ties every commit to a written spec. When main goes green it deploys itself.