Light like an oat flake
6KB CSS, 2.2KB JS, minified + gzipped.
That's it.
Oat is an ultra-lightweight HTML + CSS, semantic UI component library with zero dependencies. No framework, build, or dev complexity. Just include the tiny CSS and JS files and you are good to go building decent looking web applications with most commonly needed components and elements.
Semantic tags and attributes are styled contextually out of the box without classes, forcing best practices, and reducing markup class pollution. A few dynamic components are WebComponents and use minimal JavaScript.
6KB CSS, 2.2KB JS, minified + gzipped.
That's it.
Fully-standalone with no dependencies on any JS or CSS frameworks or libraries. No Node.js ecosystem garbage or bloat.
Native elements like <button>, <input>, <dialog> and
semantic attributes like role="button" are styled directly. No classes.
Semantic HTML and ARIA roles are used (and forced in many places) throughout. Proper keyboard navigation support for all components and elements.
Easily customize the overall theme by overriding a handful of CSS variables. data-theme="dark" on body
automatically uses the bundled dark theme.
This was made this after the unending frustration with the over-engineered bloat, complexity, and dependency-hell of pretty much every Javascript UI library and framework out there; the continuous PTSD of rug-pulls and lockins of the Node.js ecosystem trash. [1] I've published this, in case other Node.js ecosystem trauma victims find it useful.
My goal is a simple, minimal, vanilla, standards-based UI library that I can use in my own projects for the long term without having to worry about trash. Long term because it's just simple vanilla CSS and JS. The look and feel is influenced by the shadcn aesthetic.