SmolBox: running code in disposable microVMs from Elixir
I built SmolBox, an Elixir library for running programs in disposable microVMs through SmolVM workers, on Linux and macOS Apple Silicon.
This article walks through a Python example, from submitting work to collecting output files and confirming cleanup. It explains how execution continues independently of the submitting process, how stable execution identities work, and why SmolBox doesn’t silently rerun a command when its outcome is unknown.
Python is just the example. The same lifecycle supports JavaScript, TypeScript and other programs when the approved guest image includes the required runtime and dependencies.
I also explain why I chose SmolVM and when an embedded interpreter, local process or function platform might fit better.
How are you handling execution, results and cleanup when running code outside the BEAM?
Gleam Gathering 2027 next Feburary in London
Gleam Gathering is happening again on 27th of February 2027 in London, UK. Tickets sales are up and the Call For Talks is open. https://gleamgathering.com/ The first edition held last year in Bristol was great, even if we had to introduce a lot of people to the concept of Bristol. Come and meet the super friendly community, no surprises there coming from the BEAM.
ExIcon 1.0.0: Generic icon downloader and component generator
ExIcon is a generic and extensible icon set downloader and Phoenix LiveView icon component generator. It also works with SVGs in local folders, has various options to configure the generated attributes, and it is a dev-only dependency. Version 1.0.0 was recently released.
If it’s going to be read by a human, it should be written by a human
This article aims to show you why I hate AI prose. This includes an explanation of why the text LLMs produce is uniquely difficult to read and comprehend, and why it’s a burden and not a boon to human communication. Use LLMs to write code, by all means: but please, don’t use them to write prose.
https://revelry.co/insights/artificial-intelligence/say-no-to-ai-prose/
ReqCircuitBreaker: Circuit breaker using Fuse for Req
ReqCircuitBreaker is a new circuit breaker plugin for Req that uses Fuse under the hood.
Finding Your Broken Glass: A Flaky Test Prompt for GitHub Actions
✏️ CI goes red on a test you never touched, so you click re-run and hope. Nobody on the team can say how often that happens or what it costs.
Your GitHub Actions history already knows. I wrote a prompt that reads it, names the confirmed flakes, and puts an annual dollar figure on the re-runs. Plus the usual Elixir causes to look for.
https://mikezornek.com/posts/2026/9/finding-flaky-tests/?utm_source=elixirstatus&utm_campaign=finding-flaky-tests
ReqSSRF: SSRF protection for Req
ReqSSRF is a new package for preventing SSRF vulnerabilities when making requests to user-provided URLs with Req.
SafeRedirect: Redirect URI validation for preventing open redirects
We just open-sourced SafeRedirect, a new package for validating, resolving, and redirecting to user-provided URIs to prevent open redirect vulnerabilities.
ElixirConf US is THIS WEEK
Sept 10-11, live from Chicago. Can’t make the trip? Grab a virtual pass and stream the whole thing from wherever you are.
You get every talk live, the conference app, live Q&A, and access to the recordings. José Valim on set-theoretic types, Chris McCord, Zach Daniel, plus 30+ sessions on Phoenix, LiveView, OTP, Nerves and Nx.
10% off for the forum with code FORUMVISITORS:
👉 elixirconf.com/#register
No flight needed. See you on the stream or on-site!
Aurora Meter: real-time usage metering and plan entitlements for Phoenix
A free MIT library that counts usage on an ETS hot path (no DB on the write path), gates features by plan with an atomic with_quota/4, and renders live usage in LiveView over PubSub, Syncs with Stripe. Discussion on the forum: https://forum.elixirforum.com/t/aurora-meter-real-time-usage-metering-and-plan-entitlements-for-phoenix/76602
Link: https://github.com/liamkillingback/aurora-meter
Website: https://aurorameter.com
Texttile: a multiplayer blog engine in Phoenix and LiveView
My wife and I write a travel blog together. Every day, photos and videos had to move from one phone to the other before we could sort them into a post.
So I wrote Texttile. Multiple people can work in the same entry: one writes, the other follows live and arranges the gallery. Phoenix, LiveView and SQLite run in one Docker container. Photos and videos stay on your server, with no YouTube embeds.
The story, with a video of two people editing together: https://www.v01.io/posts/2026/08/texttile/
Demo: https://www.texttile.blog Source: https://github.com/texttile-blog/texttile
I’d love feedback from people who have built collaborative interfaces with LiveView.
Obscura 0.2.0: spaCy NER for Elixir on the CPU
Obscura 0.2.0 introduces :efficient, combining deterministic PII recognizers with spaCy NER for English names and locations.
Inference runs in a local Rust executable through an Erlang Port, with supervised workers and no Python required at runtime. It supports Linux servers and Apple Silicon macOS development.
On 5,000 heldout synthetic documents, it recovered more exact PII spans than :fast, but also produced more false positives. The article explains that tradeoff, CPU workload results, and why higher F1 doesn’t necessarily mean better privacy protection—with installation and Elixir integration examples.
Feedback and synthetic failure cases are welcome!
https://hfiguera.github.io/obscura/blog/beyond-regex-why-we-shipped-a-cpu-profile-for-pii-detection/
Build It With Phoenix is now Pay What You Want!
As of today (in time for @ElixirConf), my @ElixirLang and @ElixirPhoenix video course, Build It With Phoenix, is pay what you want! $0 is a legitimate option. Thank you to the 150+ of you that purchased it previously—you have made this possible. Keep learning!!!
One Pipe, One User Story: The Case for phoenix_test
✏️ Phoenix’s built-in LiveView test helpers require you to hand-build the form payload and start a fresh pipe after every click. Worse, that payload means a test can pass even when the button it “submits” was renamed.
phoenix_test writes the entire flow as a single pipe from the user’s point of view and fails with a focused error instead of the entire page’s HTML. I used it on my last side project, and I don’t want to turn back.
https://mikezornek.com/posts/2026/9/phoenix-test/?utm_source=elixirstatus&utm_campaign=phoenix-test
Building a Phased Microkernel Compiler in Elixir: How We Tamed Dependency Graphs in JusrisOS
Someone say useful.
However, as the system grew, standard compilation (mix compile.elixir) presented two distinct structural problems:
Schema evolution in distributed Async message-passing systems
We wrote more about the compatibility model and where a separate compatibility layer starts to make sense. https://curiosum.com/blog/schema-evolution-in-distributed-async-message-passing-systems
I have no idea if I’m reinventing the wheel here, so a review would be useful. Semantic and Context Impact Analysis for AI Agents in Elixir Pre-commit.
I have no idea if I’m reinventing the wheel here, so a review would be useful. Semantic and Context Impact Analysis for AI Agents in Elixir Pre-commit.
Simple, but fully functional cron job monitoring application - didit.run
Hello.
This is my first fully functional product written in Elixir. I built it for myself, for monitoring jobs in my other projects, but I’ve decided to make it available for everyone.
It’s cron job monitoring - job calls a url when it finishes, and if the call doesn’t come on time app sends an alert. Each monitor is just a GenServer sitting on a timer. No polling the DB to find what is late.
It’s free up to 20 monitors. You can test it and tell me what you think.
Feel free to leave comments, I’ll appreciate your feedback.
Link to website: https://didit.run
Early Bird for Code BEAM Europe 2026 ends in one week
Just a reminder for anyone still on the fence: early bird pricing for Code BEAM Europe closes on 8 September at 23:59 CEST. This is your last chance to get your ticket 20% cheaper before prices go up.
Dates: 21 to 22 October, 2026
Where: Haarlem, Netherlands (with a full online option if you cannot make the trip)
Two days of Erlang, Elixir and Gleam, real production stories, and demos from the people building the tools we all use.
If you have been meaning to book, now is the time.
See you there!
The Code Sync Team
AudioProxy: An imgproxy-style on-the-fly audio transcoding proxy
I built audioproxy because every project I touched that used user submitted audio ended up needing variants (previews, downloads, waveform data, …), and rather than prerendering them, storing them in a database entry and running the job queue that requires, I wanted a solution that is totally agnostic of where the audio is stored (locally or in a bucket), where it is delivered, and in what format.
In short: the URL is the entire API.
GET /{signature}/f:opus/br:96/t:0:30/fade:1:1/plain/s3://masters/track.wav
renders a signed 30-second Opus preview on demand - critically, it streams the first bytes while ffmpeg is still encoding - and because a URL fully describes its variant, every later request is served range-capable from the variant store, and CDNs can cache it as immutable.
Feedback very welcome, especially on the OTP shape and anything that looks un-idiomatic!
- Docs: https://docs.audioproxy.dev
- Live demo (runs against a real deployment): https://audioproxy.dev
- Hex: https://hex.pm/packages/audio_proxy
