After a long and deliberate alpha, spartan/ui is now 1.0.
We shipped the first 30 primitives in August 2023 with a simple bet: building accessible, good-looking UI in Angular is harder than it should be, and the community deserved a better starting point. Almost three years later, that bet has grown into a stable, production-ready library of more than 55 components - built on signals, ready for zoneless, and server-side-rendering compatible out of the box.
Here's what 1.0 actually means.
Stable, and ready to build on
We stayed in alpha for a long time on purpose. It let us refine the APIs in the open, with real applications putting real pressure on the design, instead of freezing a v1 we'd regret six months later.
That patience is what 1.0 cashes in. The APIs are now stable and semantically versioned, so you can depend on spartan/ui/brain and upgrade with confidence. The copy-in spartan/ui/helm layer stays exactly as it's always been - yours to own, read, and customize. No black boxes, no fighting the library to change a style.
Built for modern Angular
Every primitive is built on Angular signals and standalone components. spartan is zoneless-ready and SSR compatible out of the box, so it drops cleanly into how Angular apps are actually written today - no extra setup, no adapters.
The split that's defined spartan from day one still holds. spartan/ui/brain carries the hard, unglamorous parts - ARIA, keyboard navigation, focus management - and keeps them maintained so you don't have to. spartan/ui/helm gives you full styling control on top, copied into your project like a recipe. Accessibility you can rely on; appearance you fully own.
From 30 primitives to 55+
The alpha shipped with 30 components. 1.0 ships with more than 55 - nearly double - including many of the most-requested additions over the past two years:
- Data Table - sorting, filtering, and selection, the piece people asked for most
- Sidebar - composable app navigation
- Calendar and Date Picker
- Carousel, Autocomplete, Pagination, and Breadcrumb
And we added Blocks: ready-made, fully responsive layouts assembled from spartan components - authentication pages, sidebar layouts, and multi-step steppers you can drop in and adapt. Less scaffolding, more shipping.
You can browse the full component set and the blocks.
This was built by a community
I want to be clear about something: spartan/ui is not a one-person project, and 1.0 least of all. It exists because a group of people kept showing up - reviewing PRs, building components, fixing the edge cases nobody sees, and arguing about API design until we got it right.
A huge thank you to the people who carried the heaviest load getting us here - Merlin (@MerlinMoos), Marc (@marcjulian), Ashley (@ashley-hunter), Sammy (@thatsamsonkid), Benni (@elite-benni), and Toni (@toniskobic) - and to every single person who has opened an issue, sent a PR, answered a question in Discord, or sponsored the work. There are too many of you to name, and that's exactly the point. spartan is what it is because of you.
If you've contributed and want to say hi or get more involved, the door is open in Discord.
Powered by Zerops
spartan's development infrastructure runs on Zerops, and has for a long time. Preview environments, the docs and demo site, the day-to-day plumbing that makes maintaining an open-source library of this size sustainable - Zerops powers all of it. Their support is a real reason we were able to keep iterating in the open without the infrastructure becoming a tax on the team. Thank you.
Get started
There's never been a better time to start.
spartan is MIT-licensed and built in the open. If it saves you time, consider sponsoring its development - sponsorships fund ongoing maintenance, new components, and keeping spartan free for the whole Angular community.
Here's to 1.0 - and to everything we build on top of it next.













