Welcome to GigaElixir Gazette, your 5-minute digest of Elixir ecosystem news that actually matters.
This week, we look at a pure-BEAM uptime architecture that filters false alerts before they wake you up, Hex.pm’s first major security audit and the bugs it uncovered, and a new Elixir LSP that skips compilation entirely to work on broken codebases.
. WEEKLY PICKS .
🚀 Dexter Ships a New Elixir LSP That Skips Compilation
Remote open-sourced Dexter, a fast Elixir LSP built for large codebases. The key difference: it builds its index by parsing source files directly, not by compiling your project. Go-to-definition, find references, and rename work immediately - even on codebases that don't compile. Monorepo and umbrella support uses a single index at the repository root. Format-on-save runs through a persistent Elixir process with near-instant response after the first save.
🛡️ Hex's First Security Audit Found Three High-Severity Bugs
Thinking Elixir 299 covers major ecosystem security news. Hex.pm published results of its first-ever comprehensive third-party security audit, revealing three high-severity findings - all now fixed. The Erlang Ecosystem Foundation is seeking community support for the Aegis security project with an April 17th deadline. Also covered: Jose Valim shipped a massive Tidewave update with UI Variants and a new "vision" mode for AI coding.
🔥 PhxIcons Brings Dynamic Icons to LiveView at Zero Cost
New icon library for Phoenix LiveView from ream88, inspired by ExIcon. PhxIcons resolves icons at compile time with zero runtime overhead. Supports multiple icon providers out of the box. Already running in production at Tagbase. If you're tired of manually managing SVG files or paying runtime costs for icon flexibility, this handles it at the compilation step.
📊 AppSignal Detects N+1 Queries in OpenTelemetry Traces
One extra query per record feels harmless in development. At scale, it becomes the reason response times degrade and databases buckle. AppSignal now detects N+1 query patterns directly in OpenTelemetry traces and collapses repetitive spans in the timeline. The pattern becomes a first-class feature of the trace view, not a needle in a haystack. No instrumentation changes required.
🎯 Ash Chronicle Returns After 7 Months with AshStorage
Ash Chronicle Issue #26 (formerly Ash Weekly) drops a massive update. AshStorage brings file storage to the framework, AshAuthentication gets a host of new features, and the community shipped dozens of projects during the hiatus. The Ash ecosystem keeps growing its batteries-included approach to Elixir application development.

💡 Pro Tip
Your Uptime Monitor Lied to You at 3am
UptimeRobot checks your site from one location. A CDN edge goes down in Frankfurt. Your server in Virginia is fine. Your users in Tokyo see no issues. But the single check from Frankfurt fails, and your phone buzzes at 3am.
This is the false alert problem - single-region monitoring can't distinguish between "the internet is broken between A and B" and "your server is actually down."
The team at UpTrack built a multi-region uptime consensus on pure BEAM with zero external dependencies. Three regions check independently, and no single region can trigger an alert alone. Erlang's pg module handles process group membership across nodes.
A consistent hash maps each monitor to a "home node" responsible for alert decisions - if a node dies, the hash redistributes to survivors automatically.
Slow regions hit a 10-second timeout and get excluded from consensus rather than counted as failures.
Same patterns BEAM developers use daily - process groups, message passing, supervision trees - applied to a problem most teams solve with Redis and Kafka.
Remember, for multi-region monitoring architecture:
Never trust a single vantage point - Single-region checks can't distinguish between partial internet outages and actual server failures
Use pg for zero-dep consensus - Erlang's built-in process groups handle cross-node membership without Redis or Kafka
Hash monitors to home nodes - Consistent hashing ensures exactly one node owns alert decisions per monitor, preventing duplicates
Exclude slow regions, don't count them down - A 10-second timeout means the region is excluded from consensus, not counted as a failure
. TIRED OF DEVOPS HEADACHES? .
Deploy your next Elixir app hassle-free with Gigalixir and focus more on coding, less on ops.
We're specifically designed to support all the features that make Elixir special, so you can keep building amazing things without becoming a DevOps expert.
See you next week,
Michael
P.S. Forward this to a friend who loves Elixir as much as you do 💜

