A free, open-source component library that adds ready-made UI components as class names on top of Tailwind CSS.
knadh/oat
Zero-dependency semantic HTML, CSS and JS UI library of about 10KB, styling native elements without classes.
- Stars
- 5,535
- Forks
- 259
- Open issues
- 3
- Last commit
- yesterday
What is it?
Oat is a lightweight UI component library built on semantic HTML and CSS. You include a small CSS file and a small JS file, and common elements such as forms, buttons, tables and dialogs are styled contextually based on their tags and attributes, so most markup needs no classes.
There is no framework, build step or npm install required. A few dynamic components are implemented as WebComponents and use minimal JavaScript. The project is aimed at developers who want to build decent-looking web applications and dashboards without pulling in a large JavaScript UI dependency tree.
The author created it to avoid the bloat and dependency churn of typical JavaScript component libraries. A live demo and documentation are available at oat.ink.
Key features
- 01Styles semantic HTML tags and attributes without requiring class names.
- 02Ships as a single small CSS file and JS file with no dependencies.
- 03Requires no framework, build tool or package install.
- 04Provides common components and elements for building web applications.
- 05Uses WebComponents with minimal JavaScript for dynamic widgets.
Use cases
- Building a quick internal admin tool or dashboard without a frontend build pipeline.
- Styling a static site or server-rendered pages with clean semantic markup.
- Prototyping a web UI where a heavy component framework would be overkill.
Quick start
- 1
Include the tiny Oat CSS and JS files in your HTML page
Topics
FAQ
- What is oat?
- Zero-dependency semantic HTML, CSS and JS UI library of about 10KB, styling native elements without classes. Oat is a lightweight UI component library built on semantic HTML and CSS. You include a small CSS file and a small JS file, and common elements such as forms, buttons, tables and dialogs are styled contextually based on their tags and attributes, so most markup needs no classes.
- Is oat free to use? What license does it have?
- oat is open source under the MIT license. Check the license terms before using it in commercial products.
- Is oat still maintained?
- Actively maintained. The last commit to oat was on Oct 19, 2026.
- What can I use oat for?
- Building a quick internal admin tool or dashboard without a frontend build pipeline. Styling a static site or server-rendered pages with clean semantic markup. Prototyping a web UI where a heavy component framework would be overkill.
- How do I install oat?
- Include the tiny Oat CSS and JS files in your HTML page
- Where can I get oat?
- The source code and installation instructions are on GitHub: https://github.com/knadh/oat
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A rugged, minimal JavaScript framework for adding reactive behavior directly in your HTML markup.
A cozy, island-style React and TypeScript UI component library with original icons, illustrations and animations.
A dependency-free JavaScript syntax highlighter that uses the CSS Custom Highlight API instead of wrapping every token in span elements.
A collection of agent skills that teach AI coding assistants animation, UI design and frontend craft rules drawn from the author's experience at Vercel and Linear.
An open source React design system with 150+ accessible components, themes, and a CLI, built on React 19 and StyleX.