Skip to content

About oks-ui

A React component library for building whole product interfaces, made by one person and documented in the open.

What it is

oks-ui is a React component library written in strict TypeScript. It has no runtime dependencies beyond React, needs no theme provider and no configuration, and is themed with CSS variables. Every component is keyboard-operable, has visible focus and sensible ARIA roles, and respects reduced motion.

This website is its documentation and showcase: 45 components, 20 full-screen patterns and 6 complete template apps made only from oks-ui, plus guides on the blog. Every component page has a live preview you can change, the full props table, usage notes and accessibility notes.

What it tries to do well

  • Stay small. Each component is imported on its own, so an app ships only what it uses.
  • Be accessible by default. Keyboard support, focus handling and screen reader semantics are part of every component, and are tested in real browsers, not only in a simulated one.
  • Be honest about limits. Each component's page and changelog entry says what it does not do, and fixes are written down in the documentation.
  • Be easy to restyle. Colour, space, radius and shadow are all --oks-* CSS custom properties, with light and dark themes built in. See Theming.

Why it exists

At the company I work for, I built the UI components for our product from scratch, with no third-party libraries.

A few days later I found that another developer had changed one of them to solve a problem of their own that day. It worked. But I could see where that leads: if everyone fixes things by editing the shared component, the product slowly turns into a mess where no two screens behave the same way.

That stayed with me, and I realised any team with shared components can drift like this. I wanted components that stay consistent across a whole product by design: when something needs to look or behave differently, there is a clear, supported way to do it, a prop or a theme variable, so nobody has to change the component itself.

oks-ui is my attempt at building that for anyone to use. It is free and MIT licensed, so a team can start from a consistent set of components instead of building and maintaining its own.

Who makes it

oks-ui is designed, written and maintained by Omkar Sahu at OKS Group. How the blog is written, and how AI is used in it, is on How we write and test. It is released under the MIT licence and published on npm as oks-ui.

Get in touch

Questions, bug reports and suggestions are welcome. The contact page says how to reach the maker and what helps in a bug report. Answers to common questions are in the FAQ, and how the website treats your data is in the privacy policy.