About
I'm a senior full-stack developer and a vibe coder with 6 years of experience. I build web products with React, Next.js and TypeScript on the front and Node.js, Java and Spring Boot behind the API, and I never stopped caring most about the front end: the part of the work where a screen stops being a plan and starts feeling right.
These days most of my code is written by AI agents that I direct. I describe the change, they draft it, and I review, test and ship it. The craft didn't disappear, it moved: I spend as much care on the guardrails, the specs, tests and checks an agent can't talk its way past, as on the product itself. It's how one person ends up shipping native apps for macOS and iOS in Swift, a typeface and a handful of browser tools.
What I make on my own starts from something missing. A window switcher because Command-Tab switches apps. A table editor that never sends your table anywhere. A font for an alphabet that blind readers used before braille. Each one does one thing, keeps your data with you, and is free.
I'm Brazilian and I live in Spain. I speak Portuguese, English, Spanish and Esperanto. I have a degree in systems analysis and development and a specialisation in full-stack development from PUC Minas.
Lately
- Building native macOS utilities in Swift, all living in the menu bar: a window switcher, a Gmail notifier and a world clock.
- Making browser tools that keep your data on your machine, like a table editor and an SVG atlas.
- Drawing and documenting Moon Uniform, an open typeface for the Moon tactile alphabet.
- Writing the workflows my coding agents follow: how they plan, test, review and ask before anything they can't undo.
What I work with
- Front-end
- React, Next.js, TypeScript, Angular, Astro, Vite, Tailwind CSS, Material UI
- Back-end
- Node.js, Express, Java, Spring Boot, PostgreSQL, MongoDB, MySQL
- Native
- Swift, SwiftUI, AppKit, React Native, Expo
- AI
- Claude Code, Codex, ChatGPT, Gemini, Agent Skills
- Practice
- Accessibility, Testing (Jest, Cypress, Playwright, Storybook), GitHub Actions, Local-first design
Languages
- Portuguese
- Native · C2
- English
- Fluent · C1 · Cambridge Advanced, 2025
- Spanish
- Fluent · C1
- Esperanto
- Fluent · C1 · KER-Ekzameno, 2018
Off the keyboard
Languages and the cultures that come with them. Besides the four I speak, I've studied Chinese, French, Russian and Brazilian Sign Language (Libras). Talking to people in their own language is the whole point.
Anything uncommon enough to make me curious: an alphabet blind readers used before braille, a word with no translation, a town most people never hear about. If it's rare, I want to know how it works.
Tinkering with my tools: Hammerspoon and Raycast scripts that automate my Mac, a VS Code setup with more customisation than it needs, and an old Linux machine I keep running for fun.