# soroush design system > A token-driven React component library built on a typed style-prop engine, with a > markdown companion library. Every component documents its props, token values, and > defaults in its own README, which is what these pages render. An MCP server serves this same content to AI tools: https://mcp.soroush.tech/mcp (or `npx -y @soroush.tech/mcp`). ## Getting started - [Installation](https://docs.soroush.tech/design-system/getting-started/installation/): install the packages and their peers. - [Usage](https://docs.soroush.tech/design-system/getting-started/usage/): wrap the app in ThemeProvider and render a component. - [Theming](https://docs.soroush.tech/design-system/customization/theming/): the Theme type and how createTheme composes one. - [Customization](https://docs.soroush.tech/design-system/customization/how-to/): override styles through theme.components. ## Components - [View](https://docs.soroush.tech/design-system/components/view/): The base layout primitive. Renders as `
`. All styled-system prop groups are supported: space, layout, color, typography, flexbox, border, and position. - [Flex](https://docs.soroush.tech/design-system/components/flex/): Extends [`View`](https://docs.soroush.tech/design-system/components/view/). Renders as a `
` with `display: flex` and `flex-direction: column` by default. - [Grid](https://docs.soroush.tech/design-system/components/grid/): Extends [`View`](https://docs.soroush.tech/design-system/components/view/). Renders as a `
` with `display: grid`. - [Paper](https://docs.soroush.tech/design-system/components/paper/): An elevated surface primitive that extends `View`. Adds visual surface styling - shadow via `theme.shadows`, a default `bg="paper"` background, and a default `borderRadius="md"`. Consumers compose `Flex` or `Grid` inside `Paper` for layout. - [Card](https://docs.soroush.tech/design-system/components/card/): A surface component with an optional title, caption, and variant-based visual treatment. Extends `Paper` - all `Paper`, `Flex`, and space/layout props pass through. - [Quote](https://docs.soroush.tech/design-system/components/quote/): A `View` with a fixed 2px primary left border - used for terminal readouts and markdown - [AppBar](https://docs.soroush.tech/design-system/components/app-bar/): Renders as `
`. A top-level container for navigation, toolbars, and application headers. Applies a default elevation shadow from the theme and stretches to full width. - [Drawer](https://docs.soroush.tech/design-system/components/drawer/): A panel that slides in from a screen edge, built on [`Modal`](https://docs.soroush.tech/design-system/components/modal/). It portals, dims the page with a backdrop, traps focus, locks body scroll, and closes on Escape (top modal only) or backdrop click - all inherited from Modal. The panel itself is a [`Paper`](https://docs.soroush.tech/design-system/components/paper/), anchored to the chosen edge and animated with a per-anchor slide that respects `prefers-reduced-motion`. It renders on the `theme.zOrder.drawer` layer - above the app bar, below modals. - [Sidebar](https://docs.soroush.tech/design-system/components/sidebar/): A collapsible vertical icon rail. Collapsed, it shows icon-only `SidebarItem`s; open, each item's - [Typography](https://docs.soroush.tech/design-system/components/typography/): Renders as `

` by default. The `variant` prop controls both the visual scale and the HTML element. All styled-system prop groups are supported, plus five Typography-specific props. - [Link](https://docs.soroush.tech/design-system/components/link/): Renders as ``. Composes `Typography` - all typographic scale, color, spacing, and layout props are inherited. Adds `underline`, and defaults `color` to `"primary"` and `variant` to `"inherit"`. - [Icon](https://docs.soroush.tech/design-system/components/icon/): Renders a themeable SVG icon from the central registry. Consumers pass a `name`; `Icon` owns every `?react` import and maps the name to its component. - [Image](https://docs.soroush.tech/design-system/components/image/): A styled-system `` primitive. Accepts all layout, space, background, and position props from the theme, plus `objectFit` / `objectPosition` for common image sizing patterns and `borderRadius` for rounded corners. - [Avatar](https://docs.soroush.tech/design-system/components/avatar/): Displays a user image, initials, or icon in a consistently sized container. Supports three shapes, four preset sizes, an optional ring outline, and automatic image-error fallback. All styles derive from theme tokens. - [Table](https://docs.soroush.tech/design-system/components/table/): The root of the table family. Renders a `` with collapsed borders and full width, and - [Button](https://docs.soroush.tech/design-system/components/button/): Renders as `