A free, open-source collection of Tailwind CSS UI components you copy and paste into your own projects, with no package to install.
hunvreus/basecoat
A vanilla HTML/CSS/JavaScript implementation of shadcn/ui-style components built on Tailwind CSS, usable without React.
- Stars
- 4,424
- Forks
- 147
- Open issues
- 6
- Last commit
- 15 days ago
What is it?
Basecoat is a component library that reproduces the shadcn/ui design system using Tailwind CSS, plain HTML, CSS and JavaScript. It does not depend on React, Radix or any framework runtime, so the components can be dropped into any web stack, whether that is a static site, a server-rendered template or a JavaScript app.
The library is HTML-first: components are semantic markup styled with Tailwind, and a small amount of vanilla JavaScript adds behavior where needed. It ships several standalone style packs (Vega, Nova, Maia, Lyra, Mira, Luma, Sera and Rhea), and is compatible with shadcn/ui themes. Dark mode is supported.
Basecoat can be consumed through npm, a CDN, or project templates including Nunjucks and Jinja. Its JavaScript exposes init, initAll and refresh functions for re-initializing components after frameworks or navigation libraries restore cached DOM.
Key features
- 01Semantic HTML-first components styled with Tailwind CSS v4.
- 02Vanilla JavaScript behavior with no React or Radix dependency.
- 03Eight standalone style packs plus a styleless base bundle.
- 04Compatible with shadcn/ui themes and includes dark mode.
- 05Available via npm, CDN, or Nunjucks and Jinja templates.
Use cases
- Adding shadcn-style UI to a server-rendered app without adopting React.
- Building a static marketing or documentation site with polished components.
- Creating a custom design by layering a styleless base with your own style file.
- Using consistent UI components in Django, Flask or other Jinja-based projects.
Quick start
- 1
Install the package from npm
npm install basecoat-css - 2
Import Tailwind and Basecoat in your main CSS file
Things to know
- Styling depends on Tailwind CSS, so you need a Tailwind setup in your project.
Topics
FAQ
- What is basecoat?
- A vanilla HTML/CSS/JavaScript implementation of shadcn/ui-style components built on Tailwind CSS, usable without React. Basecoat is a component library that reproduces the shadcn/ui design system using Tailwind CSS, plain HTML, CSS and JavaScript. It does not depend on React, Radix or any framework runtime, so the components can be dropped into any web stack, whether that is a static site, a server-rendered template or a JavaScript app.
- Is basecoat free to use? What license does it have?
- basecoat is open source under the MIT license. Check the license terms before using it in commercial products.
- Is basecoat still maintained?
- Actively maintained. The last commit to basecoat was on Oct 23, 2026.
- What can I use basecoat for?
- Adding shadcn-style UI to a server-rendered app without adopting React. Building a static marketing or documentation site with polished components. Creating a custom design by layering a styleless base with your own style file. Using consistent UI components in Django, Flask or other Jinja-based projects.
- How do I install basecoat?
- Install the package from npm: npm install basecoat-css Import Tailwind and Basecoat in your main CSS file
- Where can I get basecoat?
- The source code and installation instructions are on GitHub: https://github.com/hunvreus/basecoat
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A free, open-source component library that adds ready-made UI components as class names on top of Tailwind CSS.
An Angular UI kit of 130+ components and 100+ directives, built as tree-shakable secondary entry points with CSS custom property theming.
A collection of neobrutalism-styled UI components built with Tailwind CSS, based on shadcn/ui.
A hand-drawn look for shadcn/ui: 123 accessible React and Tailwind components styled like pen drawings on paper, plus a shadcn registry.
Accessible React component library and design system for building web apps quickly, with dark mode and Next.js RSC support.