Senior Full Stack Software Engineer · Open Source Contributor · Brazil
Software engineer from Brazil with more than 10 years of experience in full stack development, focused on backend systems, APIs and microservices. I build mostly with TypeScript, Node.js, Python and PHP, from service design and databases to React and Vue front ends. As an open source contributor, I fix bugs in projects from React, Google, Adobe, Apple, Netflix, Shopify, Uber and other organizations, usually in parsers, protocol handling, build tooling and web platform code.
30 merged pull requests to projects maintained by Google, Capital One, Adobe, React, Uber, Tailwind Labs, Valve, Shopify, Apple, Netflix and ByteDance Web Infra, plus the community project Portugol Webstudio.
14 merged pull requests in budoux, bumble and mobly
| Repository | Pull request |
|---|---|
| capitalone/datacompy DataFrame comparison library |
fix: keep the default tolerance key when upper casing column names |
| fix: compare string lists in the pandas array comparator |
Both fixes were carried into maintainer pull requests so CI could run with repository secrets, and the merged commits credit me as co-author.
| Repository | Pull request |
|---|---|
| adobe/spectrum-web-components Spectrum design system web components |
fix(overlay): remove nonexistent OverlayDialog export Commit merged via this maintainer PR, carried over from #6790 |
| fix(menu): skip hidden menu items during keyboard navigation Commit merged via this maintainer PR, carried over from #6789 |
| Repository | Pull request |
|---|---|
| react/metro JavaScript bundler for React Native |
Fix section offsets in generatedMappings() for indexed source maps |
| Repository | Pull request |
|---|---|
| uber/h3 Hexagonal geospatial indexing system |
Fix stringToInt CLI truncating 16 digit indexes |
| Repository | Pull request |
|---|---|
| tailwindlabs/tailwindcss Utility first CSS framework |
Sort breakpoint variants with decimal values numerically |
| Repository | Pull request |
|---|---|
| ValveSoftware/Fossilize Vulkan pipeline state serialization |
Only build CLI-dependent tests when FOSSILIZE_CLI is enabled |
| Repository | Pull request |
|---|---|
| Shopify/hydrogen Headless Shopify storefront framework |
Ignore query string when inferring SEO media type |
| Repository | Pull request |
|---|---|
| apple/embedding-atlas Interactive embedding visualization tool |
fix(backend): read .ndjson files as newline-delimited JSON |
| Repository | Pull request |
|---|---|
| Netflix/spectator-py Python metrics library for Atlas |
Select the UDP socket writer by scheme, not substring |
| Repository | Pull request |
|---|---|
| web-infra-dev/rsbuild Build tool for web apps, powered by Rspack |
fix(core): avoid treating sibling dist paths as nested |
Community project. These pull requests are written in Portuguese, following the project's conventions.
JSX-style rendering directly inside plain HTML. No compiler. No transform. No build step.
Voodoo.js reads the markup the browser has already parsed, recovers each JSX expression and runs it through its own lexer, Pratt parser and AST interpreter. There is no eval and no new Function, so it works under a strict Content Security Policy, and every region is a reactive effect that re-renders when its data changes.
<!doctype html>
<html>
<head>
<script src="https://cdn.jsdelivr.net/npm/voodoojs@0.13.0/dist/voodoo.full.min.js" defer></script>
</head>
<body>
{
const user = 'Ana';
const fruits = ['apple', 'pear', 'grape'];
}
<h1>Hello, {user}!</h1>
<ul>
{fruits.map((fruit) => (
<li>{fruit}</li>
))}
</ul>
</body>
</html>Save it as index.html and open it: the page shows a heading that reads "Hello, Ana!" and a list with apple, pear and grape. No bundler, no dev server.
Repository · Website · Playground · npm





