Backend engineer in Tokyo. BEAM person — Erlang, Elixir, and mostly Gleam these days. When the BEAM is the wrong tool, Rust or Go.
Mostly I just like trying things. A new language, a new runtime, a tool I'm not sure I need — I'd rather build something small with it than read about it. Most of those stay experiments. The ones below stuck around: a GraphQL server for Gleam, codegen for specs, a job queue, a code-intelligence engine, a supply-chain scanner.
Gleam
| nori | OpenAPI codegen — types, routes, clients, middleware, React Query/SWR hooks |
| nori_asyncapi | AsyncAPI 3.x codegen — typed TypeScript client + Gleam server handlers |
| mochi | GraphQL engine. Satellites: codegen, transport, relay, upload, studio |
| taffy | Pure Gleam YAML 1.2 parser 🍬 |
Rust / Go
| ripple | Code-intelligence engine — blast radius, PR review targeting, cross-service call graphs across 13 languages. CLI, MCP server, or file-watching daemon |
| aegis-cli | Supply-chain scanner — offline-first, AST risk scoring, CVE/OSV gating, SBOM, 24 lockfile ecosystems |
| sendup | Static HTML to your own subdomain in ~1s, on Cloudflare's free tier |
| apm | Lockfile-based reproducible plugin installs for AI agent tools |
Neovim
| aegis.nvim | Gates plugin clone/update/build/load on an aegis verdict for that exact commit |
| pakku.nvim | Plugin manager on vim.pack — lazy.nvim DX, supply-chain scanning, force-push audit |





