# Obsyde UI > Obsyde UI is a collection of React components, charts and effects: plain React, TypeScript and CSS with no runtime dependencies, installed as source with the shadcn CLI. Dark, monochrome at rest, one accent for what is live. --- # Introduction > What Obsyde UI is, what you get, and how a piece gets into your project. Obsyde UI is a collection of 205 React components, charts and effects, curated from years of building interfaces and redrawn to one set of rules: one type, one light, one way of moving. Every piece is plain React, TypeScript and CSS. There is no package to install and nothing to keep up to date: you add the source to your project and it is yours to change. ## What you get - **121 components**: actions, forms, data, navigation, overlays, feedback, effects and page sections. - **84 charts**: lines, bars, distributions, flows, networks and maps, with tooltips, legends and loading states. - **23 free pieces**, and every other piece with [Pro](https://obsydeui.com/pricing), paid once. Dark, monochrome at rest, and warm only where something moves. Each piece takes an `accent` (`ember`, `volt` or `arc`), works from the keyboard, and honours reduced motion. ## Three ways in 1. **The shadcn CLI.** One command copies a piece and the shared files it needs into your project. See [Installation](https://obsydeui.com/docs/installation). 2. **Download.** Every item page has a zip with the same files and paths. 3. **Copy prompt.** Every item page can brief your AI coding agent: what the piece is, how to install it, its props and the house rules. See [AI agents](https://obsydeui.com/docs/ai). ## Where things are - [Components](https://obsydeui.com/components) and [Charts](https://obsydeui.com/charts): every piece, live, with its code, props and examples. - [Changelog](https://obsydeui.com/changelog): what shipped and when. - [Licence](https://obsydeui.com/license): one licence for every piece, free or Pro. - [llms.txt](https://obsydeui.com/llms.txt): the whole site as Markdown, for agents. --- # Installation > Add a piece with the shadcn CLI, or by hand. Requirements, where files land, and what comes with them. ## Requirements - React 19 and TypeScript. - A bundler that imports CSS from components: Next.js, Vite, React Router and most others do. - Nothing else. No Tailwind, no runtime packages: the pieces ship their own CSS, fonts and motion. Every piece is a client component. The CLI and the download add `'use client'` to the files that need it, so in the Next.js App Router you can render a piece from a server component as is. ## With the shadcn CLI Free pieces install straight from their URL: ```bash npx shadcn@latest add https://obsydeui.com/r/button.json ``` The same command is on every item page, with pnpm and bun versions. If your project has no `components.json` yet, the CLI offers to create one first. Pro pieces install by name, `@obsyde/`, once your licence key is set up: see [Pro and the CLI](https://obsydeui.com/docs/pro). ## Where files land A piece installs under your components directory, in its own folder: ```text components/obsyde/ LICENSE.txt ember/ shared/ tokens, fonts, springs and the accent ramp button/ the piece itself ``` Shared folders (`ember/shared`, and `ember/viz-kit` for charts) install once and every piece after that reuses them. Keep the layout: the files import each other by relative path. Then import the piece from its folder: ```tsx import { Button } from '@/components/obsyde/ember/button/Button'; export function Save() { return