primitives VS vanilla-extract

Compare primitives vs vanilla-extract and see what are their differences.

primitives

Radix Primitives is an open-source UI component library for building high-quality, accessible design systems and web apps. Maintained by @workos. (by radix-ui)

vanilla-extract

Zero-runtime Stylesheets-in-TypeScript (by vanilla-extract-css)
SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
primitives vanilla-extract
26 90
14,251 9,267
2.7% 0.6%
8.0 8.9
9 days ago 8 days ago
TypeScript TypeScript
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

primitives

Posts with mentions or reviews of primitives. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-22.
  • Radix Primitives: an open-source UI component library
    1 project | news.ycombinator.com | 20 Mar 2024
  • React: Build your own composable, headless components
    3 projects | dev.to | 22 Jan 2024
    Fast forward to a week ago, I cloned the Reach UI and Radix UI codebase and started exploring. Large codebases are always difficult to comprehend. With some digging around and reverse engineering, I was able to create the first component listed in the Reach UI docs, the Accordion.
  • Show HN: Radix Themes – A beautiful, open-source React component library
    1 project | news.ycombinator.com | 8 Aug 2023
    Hi HN! I'm Vlad, a designer and engineer on the Radix team (https://radix-ui.com). We just launched Radix Themes, an open source component library for building modern, accessible React apps.

    Radix Themes is built on top of Radix Primitives (https://radix-ui.com/primitives), which companies like Vercel, CodeSandbox, and Supabase, among others, already use to power their interfaces.

    Our goal is to help you focus on your product and build it faster instead of re-inventing common designs and working on the UI components over and over.

    Under the hood, Radix Themes is built with TypeScript, React and vanilla CSS. All design tokens are CSS variables that you can tweak, overwrite, or use to build your own custom components with any styling solution that you like.

    The idea to build Radix Themes emerged while working on our own design system at WorkOS (https://workos.com), which is the company behind Radix. There was hundreds of design details and edge cases that we had to take care of, so it still didn't feel like a solved problem.

    We also were obsessed with getting the developer experience right. For every component we asked ourselves—what is the right API? What are the right props and parts? What should, and more importantly, shouldn’t be a part of this component? What API would make the code easy to understand and maintain, and what would put you into a messy situation that could bite when you don’t expect it?

    With this approach, we used our own, battle-tested components that serve our paying users to kickstart Radix Themes.

    I hope that you find Radix Themes useful. Right now, there’s 45 components, hundreds of carefully crafted variants, a few simple and powerful primitives for layout, and an extensive token system.

    I would love to hear your feedback on our work and learn about your experiences with building UIs.

  • 5 React Libraries to Level Up your Projects in 2023
    8 projects | dev.to | 19 Jun 2023
  • I'm building Radix Svelte, an unstyled UI component library with a focus on accessibility.
    1 project | /r/sveltejs | 24 Apr 2023
    Other things that led me to choose this path were: Most libraries that are ports, official or not, use the original name (e.g. Svelte Material UI); Radix UI's license is fairly permissive (https://github.com/radix-ui/primitives/blob/main/LICENSE), which is why I also don't think it matters that it's a company behind it. Same as why I don't see an issue with the name Preact, for example.
  • I made a tool for converting between different media formats (without uploading to a server)
    3 projects | /r/webdev | 22 Apr 2023
    For a react project I recommend https://radix-ui.com, it's got pretty good defaults
  • List of free Tailwind UI component resources
    12 projects | /r/tailwindcss | 7 Apr 2023
    radix-ui.com
  • useControlledProps: Make any React Component Controlled/Uncontrolled
    1 project | /r/reactjs | 23 Mar 2023
    This is really cool, Radix UI uses a similar hook internally for their components. I like your implementation though.
  • Is form handling always a pain in the ass in React?
    1 project | /r/reactjs | 26 Feb 2023
    Remix is a dream. Once combined with Radix Form Component it'll be freaking heaven. https://github.com/radix-ui/primitives/blob/form-rfc/rfcs/2023-radix-form-primitive.md
  • Please give feedback on my personal company website
    1 project | /r/Frontend | 3 Feb 2023
    Looks like radix-ui.com, but a bit more boring tbh

vanilla-extract

Posts with mentions or reviews of vanilla-extract. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-22.
  • The best testing strategies for frontends
    8 projects | dev.to | 22 Apr 2024
    In our experience, the best testing strategy for modern frontends is a combination of E2E testing (using Playwright+NextJS), and unit testing. Visual regression testing is not worth the effort in our opinion, especially with the advent of better CSS tooling like TailwindCSS and Vanilla Extract.
  • Is there really anything better than Css Modules?
    2 projects | /r/Frontend | 7 Dec 2023
    For building component libraries I’ve been a big fan of vanilla extract. Apparently it’s from the same people who made css modules
  • Introducing StyleX - the styling system used by Meta
    1 project | /r/webdev | 6 Dec 2023
    This sounds exactly like Vanilla Extract. https://vanilla-extract.style/
  • An Overview of 25+ UI Component Libraries in 2023
    40 projects | dev.to | 10 Sep 2023
    KumaUI : Another relatively new contender, Kuma uses zero runtime CSS-in-JS to create headless UI components which allows a lot of flexibility. It was heavily inspired by other zero runtime CSS-in-JS solutions such as PandaCSS, Vanilla Extract, and Linaria, as well as by Styled System, ChakraUI, and Native Base. ### Vue
  • Creating a Component Library Fast🚀(using Vite's library mode)
    7 projects | dev.to | 11 Aug 2023
    The components are styled with CSS modules. When building the library, these styles will get transformed to normal CSS style sheets. This means that the consuming application will not even be required to support CSS modules. (In the future I want to extend this tutorial to use vanilla-extract instead.)
  • Tailwind CSS and the death of web craftsmanship
    8 projects | news.ycombinator.com | 2 Aug 2023
    I do a lot of UI work and have never understood the appeal of Tailwind. It’s like relearning a new language. Tailwind was released in 2017. Maybe the CSS landscape wasn’t as good back then? Modern CSS is pretty awesome.

    I’ve enjoyed using Vanilla Extract https://vanilla-extract.style/. It’s like css-in-js with none of the downsides as everything gets compiled to css.

  • PSA: Rust web frontend with Tailwind is easy!
    3 projects | /r/rust | 1 Jul 2023
    Nah, I used enough Tailwind to know it becomes a spaghetti mess. I stick with CSS now, and in React I use https://vanilla-extract.style, compile time CSS in TypeScript.
  • What's the best option these days for CSS in JS?
    10 projects | /r/reactjs | 18 Jun 2023
    Vanilla Extract is my current choice for the next greenfield project. I would also recommend checking out how and why this team integrated it with Tailwind.
  • Feeling lost on grokking large libraries
    2 projects | /r/node | 13 Jun 2023
    I'm not trying to call a particular org or library out, because I think the ones I've been digging through (and prompted me to write this) are very high quality. It's vanilla-extract (a build-time CSS-in-JS library) and Braid Design System (built on vanilla-extract).
  • Coming here from svelteland... is there a way to put CSS module inside JS?
    4 projects | /r/solidjs | 3 Jun 2023
    Apart from what has been suggested, there is also https://vanilla-extract.style/.

What are some alternatives?

When comparing primitives and vanilla-extract you can also consider the following projects:

shadcn/ui - Beautifully designed components that you can copy and paste into your apps. Accessible. Customizable. Open Source.

stitches - [Not Actively Maintained] CSS-in-JS with near-zero runtime, SSR, multi-variant support, and a best-in-class developer experience.

zag - Finite state machines for building accessible design systems and UI components.

panda - 🐼 Universal, Type-Safe, CSS-in-JS Framework for Product Teams ⚡️

headlessui - Completely unstyled, fully accessible UI components, designed to integrate beautifully with Tailwind CSS.

styled-components - Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 💅

chakra-ui - ⚡️ Simple, Modular & Accessible UI Components for your React Applications

Tailwind CSS - A utility-first CSS framework for rapid UI development.

sveltekit-package-template - A barebones project that provides the essentials for writing highly-optimized, reusable packages in Svelte.

shoelace-css - A collection of professionally designed, every day UI components built on Web standards. SHOELACE IS BECOMING WEB AWESOME 👇👇👇

linaria - Zero-runtime CSS in JS library