Cauã Diório
junior front-end developer · jaú, sp
today
I'm a junior front-end dev at Loopscape, working on Loopvet, a system for veterinary clinics. What I enjoy most is motion and design, and the lab on this site is where I show that.
In my free time I work on cd/ui and converter-hub and study security with Sentinel Forge. I use AI every day to learn faster, but I try hard to understand what's going on in the code and I review a lot. I'm still learning what works best.
professional
mar 2026 - presentLoopvet / Loopscape
from front-end intern to junior front-end developer
- Built the internal CMS from scratch. One codebase runs several content portals for Loopvet and Domus, with a text editor, a public API and a link shortener that counts clicks.
- Handled the CMS security. Each person can only touch what their role and portal allow, and login uses two-factor authentication. Image uploads also block files made to take the server down.
- Built Loopvet's spreadsheet importer. It reads CSV and Excel, matches columns automatically or by hand, and shows a validated preview before importing.
- Next.js
- React
- TypeScript
- Elysia
- Drizzle
- PostgreSQL
- Better Auth
- Tiptap
- S3
- Cloudflare Workers + KV
projects
all repositoriesMy React components. You can see how much each one weighs and install it right into your project.
32 components and 15 blocks, ~695 B gzipped on average
- React
- TypeScript
- Base UI
- Tailwind v4
- shadcn registry
- Zod
Converts spreadsheets, images and other files right in your browser.
no file ever leaves the browser
- TypeScript
- SQLite (WebAssembly)
- Vitest
A coding agent where the AI suggests and the program itself checks before doing anything.
runs 100% on your computer, with Ollama
- Rust
- Tauri
- Ollama
- Next.js
Reads server logs and flags what looks like an attack. It's where I study security.
a thousand login attempts become a single alert
- Go
- YAML
The tool I use to bring a clinic's data from another system into Loopvet, checking everything before it imports.
from 1 to up to 10 clinics migrated a day, in testing
- Bun
- Next.js
- TypeScript
- Base UI
- Playwright
Our household finances in one dashboard, with alerts on Discord. It only reads bank data and never moves money.
350+ tests, and no amount is ever stored
- Next.js
- TypeScript
- Open Finance (Pluggy)
- Vercel Cron
- Discord
3,127 contributions in the last year · github.com/di0rio
Interactions I keep polishing until they feel right. Go ahead, hold the button:
destructive actions need intent: the fill takes 1.6 s while you hold and snaps back in 200 ms when you let go. space or enter work too.
stack
TypeScript · React · Next.js · Tailwind CSS · Node.js · Bun · PostgreSQL · Drizzle
learning: Go · Rust
writing
see all- the skill I made so AI writes the way I do
the first version of humanizar still let AI-sounding text through. what I kept pointing out on my portfolio bio, round after round, became the new version
- better-intl's t broke after an await
the error that took down my build, why React's use() goes away after an await, and the PR I sent to better-intl that got merged
- demo videos that show the product: the portfolio-demo skill
why my old portfolio videos didn't work, the skill I wrote so AI plans and reviews demos, and what the frame-by-frame review caught (including a bug in the product itself)