Composable, accessible components with thoughtful defaults. Build your own component library with code you can customize, extend, and make your own.
github.com/shadcn-ui/uiIndexed at 30a58d4Up to date with upstreamRefreshes weekly
Repowise is a documentation engine for `shadcn/ui`: it consumes the component registry sources (code + presets) and user-facing templates, runs codemods and schema/preset analysis to build an internal “registry + content” index, then produces publishable UI documentation pages and component library metadata served to developers via the documentation surface (e.g., `https://ui.shadcn.com/docs`).
Written by gpt-5.4-nano from the index
5,111 files and 10,973 symbols in 7 modules, led by TypeScript (3,777 files) and JavaScript (34).
Start reading
Code health
This codebase scores 9.1 out of 10 for code health, which we rate excellent. It also scores maintainability 8.9 and static performance 9.9 out of 10. The three are scored separately and never blended into one number. Risk is concentrated, as it usually is: 150 of 5,111 files are git hotspots, and they average 7.6 — which is where the fixes pay off most.
On the leaderboards:#2 of 43 TypeScript repos
1 thing worth doing in the week to Oct 12, the last indexed commit, 1 of them now.
Simplify recursivelyResolveFileImports in packages/registry/src/registry/resolve-file-imports.ts while the change is fresh
1 commit in the last 7 days added or worsened 3 critical or high findings here, still open. Fixing now costs less than after the next change.
Add a test coverage report
Without one, Repowise cannot tell tested code from untested code, so every test-related action says “unknown”.
Point Claude Code, Cursor, Codex or VS Code at this repository. Your agent gets the index this page is built from: cited answers, callers, history and health for any file.
https://api.repowise.dev/mcp/shadcn-ui/uiOne command, run anywhere. Adds the server to your local Claude Code config.
Docsclaude mcp add --transport http repowise https://api.repowise.dev/mcp/shadcn-ui/ui \ --header "Authorization: Bearer rw_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
This repo is public, so anyone with a Repowise account and an API key can connect.
Try asking
Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed.
Sign in with GitHub and we check that you are an admin or maintainer of shadcn-ui/ui. Then add a badge to the README that links readers here.
Add this URL as a custom connector and sign in with repowise when asked. No API key to copy.
https://api.repowise.dev/mcp/shadcn-ui/uiFor maintainers
Every badge is public, cached, and updates on its own after every index. Nothing to install.
Links to this page, with no score on it. Adding it also re-indexes the repo every week.
[](https://repowise.dev/repo/shadcn-ui/ui?src=badge_wiki)The repo's health score out of 10, from the latest index.
[](https://repowise.dev/repo/shadcn-ui/ui?src=badge_health)A larger card with the score, its change since the last index, and when it was measured. The HTML version follows the reader's light or dark theme.
[](https://repowise.dev/repo/shadcn-ui/ui?src=badge_card)ui is a set of customizable, accessible components for building your own component library. It provides component code with defaults that developers can extend and adapt. The project is primarily written in TypeScript and uses the npm ecosystem.
Written by a model from the README and the index
ui organizes component and template functionality across apps, packages, and templates. The registry entry point at packages/registry/src/registry/index.ts provides access to registry data. The shadcn package entry point at packages/shadcn/src/index.ts exposes package functionality, while packages/shadcn/src/templates/start.ts handles template startup. The apps/v4 directory provides the application and registry surface, including apps/v4/registry/__index__.tsx for registry indexing. The templates directory supplies bootstrapped client applications, including templates/vite-app/src/App.tsx and templates/vite-app/src/main.tsx.
Composable, accessible components with thoughtful defaults. Build your own component library with code you can customize, extend, and make your own. This page is a map of the shadcn-ui/ui repository, written primarily in TypeScript, rebuilt from the source each time it is indexed. Repowise parses every symbol, computes a dependency graph, scores per-file code health from complexity, duplication, test coverage and churn, mines git history for hotspots and ownership, and lifts the architectural decisions into documentation you can read here or query through MCP.
The codebase has 5,111 files and 10,973 symbols in 7 modules, led by TypeScript, JavaScript and Dockerfile. Code health is 9.1 out of 10, rated excellent.
Use the links above to open each view, or connect this repository to your agent for grounded answers inside Claude, Cursor, Codex or VS Code.
ui is a set of customizable, accessible components for building your own component library. The project provides open-source component code that developers can extend and adapt.
ui organizes registry data, package utilities, application code, and starter templates across its TypeScript modules. Registry and template entry points connect reusable components with application setup.
ui is primarily written in TypeScript. The repository also includes JavaScript, Dockerfile, and shell files.
ui is organized into apps, packages, templates, skills, scripts, and root configuration files. The packages directory handles registry and template plumbing, while apps and templates provide application surfaces and bootstrapped clients.
ui is for developers who want to build their own component library. Its components are intended to be customized, extended, and adapted.
ui uses the MIT license.
Answers written by a model from the README and the index