Danila Poyarkov
1.1K posts






I've built a new JavaScript runtime that runs inside the BEAM. Every JS runtime is a GenServer with its own OS thread. No JSON anywhere — JS objects map to BEAM terms natively through a lock-free queue. What makes it different from running Node/Deno/Bun alongside Elixir: → JS runtimes live in supervision trees. They crash, restart, recover state — standard OTP → fetch() goes through :httpc. WebSocket through :gun. crypto.subtle through :crypto. BroadcastChannel through :pg — works across a cluster → The DOM is lexbor (C library). JS renders into it, Elixir reads it directly — no serialization, no re-parsing → Workers are BEAM processes. They get preemptive scheduling for free → TypeScript toolchain (OXC) and npm client built in — no Node.js on the machine at all Full control over the JS layer: parse ASTs, bundle imports, transform TypeScript, minify — all from Elixir via OXC NIFs. Use cases: — SSR with Preact/React into native DOM, Elixir reads the tree — Sandboxed user-defined business rules with memory limits, timeouts, and a controlled API surface — Parallel Workers that compute and broadcast via distributed process groups — Evaluating or bundling TypeScript without any external toolchain — Running npm packages inside the BEAM Still a research project in early beta. Covered with tests including Web Platform Tests ports, but expect rough edges. github.com/elixir-volt/qu…






OpenPencil v0.10.0! Claude Code, Codex, and Gemini CLI can now design inside the editor via ACP. They call MCP tools on the live canvas and ask permission before touching files. Stock photos from Pexels and Unsplash. Skeleton-first AI workflow — placeholders first, then content fill. Batched tools, visual feedback on canvas while AI works. Gradients in set_fill. Z.ai and MiniMax providers. Image drag-and-drop and clipboard paste. 5.4× faster file open via Web Workers. Save no longer blocks the UI. Figma compatibility: variable-bound fills through alias chains, instance overrides through clone chains, SCALE constraints, radial/angular/diamond gradients, per-character text colors, rounded corner clipping, drop shadows on transparent containers, foreground blur. Clipboard roundtrip keeps constraints, arcData, strokes, textAutoResize. CJK text no longer garbled. Font fallback chain rewritten. Headless PNG export via MCP. github.com/open-pencil/op…




json-render now supports YAML as a wire format JSONL needs a full element before rendering YAML is valid at every prefix, going from element-level to property-level 💨 YAML looks like source code to LLMs And we use 3 standards they know: JSON Patch, Merge Patch, Unified diff




We built a better alternative to json-render & A2UI Up to 3x faster rendering & 67% fewer tokens. Far fewer broken outputs. We've been shipping Generative UI interfaces to 10,000+ developers for the past year. We know where JSON-based rendering breaks in production. So we built a new format - one that works with how models actually generate, not against it. And today we're open sourcing it: openui [dot] com

I've built a new JavaScript runtime that runs inside the BEAM. Every JS runtime is a GenServer with its own OS thread. No JSON anywhere — JS objects map to BEAM terms natively through a lock-free queue. What makes it different from running Node/Deno/Bun alongside Elixir: → JS runtimes live in supervision trees. They crash, restart, recover state — standard OTP → fetch() goes through :httpc. WebSocket through :gun. crypto.subtle through :crypto. BroadcastChannel through :pg — works across a cluster → The DOM is lexbor (C library). JS renders into it, Elixir reads it directly — no serialization, no re-parsing → Workers are BEAM processes. They get preemptive scheduling for free → TypeScript toolchain (OXC) and npm client built in — no Node.js on the machine at all Full control over the JS layer: parse ASTs, bundle imports, transform TypeScript, minify — all from Elixir via OXC NIFs. Use cases: — SSR with Preact/React into native DOM, Elixir reads the tree — Sandboxed user-defined business rules with memory limits, timeouts, and a controlled API surface — Parallel Workers that compute and broadcast via distributed process groups — Evaluating or bundling TypeScript without any external toolchain — Running npm packages inside the BEAM Still a research project in early beta. Covered with tests including Web Platform Tests ports, but expect rough edges. github.com/elixir-volt/qu…






