Relic 1.0 - A modern web server for Dart
Today, we’re thrilled to announce the launch of Relic 1.0, a modern, fully typed, and production-ready web server built specifically for Dart. If you’ve ever used Shelf, or even just considered Dart for backend development, Relic is something you should absolutely take a look at.
Relic brings the performance, type safety, and developer ergonomics Dart developers have been waiting for — and it’s available now on pub.dev.
Why We Built Relic
Shelf has been a core part of the Dart backend story for years. It offers composable handlers, simple middleware, and a clean functional model. But as Dart has evolved with sound null safety, improved async capabilities, and a growing full-stack ecosystem, Shelf has started to feel old.
At Serverpod, we needed a more modern foundation for our framework. So we built Relic: a web server that keeps everything great about Shelf and upgrades everything else.
Routing, type safety, performance, and ergonomics; it all gets a serious upgrade.
What makes Relic different?
Full type safety. Headers, cookies, and even context values are strongly typed. Say goodbye to raw strings and runtime bugs. With Relic, you get compiler checks, IDE autocomplete, and safer refactors.
Lightning-fast routing. Relic uses a trie-based router to efficiently handle thousands of routes. Path parameters are clearly defined and type-safe, so route handling is both performant and predictable.
Built-in static file support. Relic serves static assets with correct MIME types, ETags, and cache headers. Cache busting is supported out of the box, giving you better control over how files are delivered and updated in the browser.
WebSockets, no setup required. Relic includes first-class support for WebSockets. You can upgrade a connection and start streaming data in seconds — ideal for live dashboards, chat apps, and real-time updates.
Battle-tested and Reliable
Relic isn’t just a new library; it’s already powering the full Serverpod framework and our production infrastructure. It’s used in production by thousands of apps. It’s secured by over 3,000 tests with 92% coverage, and already sees over 40,000 downloads per month.
You also get a top-tier developer experience:
- Hot reload that works out of the box.
- Helpful error messages.
- Full, easy-to-navigate documentation packed with examples.
Migrating from Shelf
Already using Shelf? We’ve got some good news. Migration is easy.
Relic retains the familiar handler structure while offering a cleaner API. With AI-powered migrations using Antigravity, complete projects can typically be converted in a single shot.
There’s a full migration guide with step-by-step instructions in our documentation. You don’t have to rewrite your server. Just upgrade it.
Get started
Relic 1.0 is live on pub.dev. Or, just run dart pub add relic, and you’re good to go.
Explore the documentation at docs.dartrelic.dev for tutorials, references, and migration guides. And if you want to contribute or connect with the team, check out the GitHub repo or join our Discord.
Relic is fast, typed, and built for the real world. We can’t wait to see what you build with it.