repowisevercel-labs/ui

Architecture of vercel-labs/ui

vercel-labs/ui is 6,358 source files holding 21,510 symbols across 6 modules, written mainly in TypeScript, Svelte, Vue. The largest module is examples, with 3,150 files, and 6 files are entry points into the dependency graph.

How ui fits together

Behaviors are implemented in the core package, whose entry point is packages/core/src/index.ts. Framework adapters such as packages/svelte/src/index.ts, packages/vue/src/index.ts and packages/solid/src/index.ts connect those behaviors to each framework. A component is built by creating a primitive with behaviors, and createParts renders that primitive into parts such as Root, Input and Clear. The apps/playground/src/main.ts entry point runs the playground app, and apps/docs holds the documentation site. The same parts are produced in every supported framework.

Largest modules

  • examples: 3,150 files and 144,128 lines of code
  • packages: 1,976 files and 221,292 lines of code
  • tests: 487 files and 61,411 lines of code
  • apps: 149 files and 37,741 lines of code
  • scripts: 20 files and 3,876 lines of code
  • root: 1 file and 58 lines of code

Languages

By file count: TypeScript 4,088 files, Svelte 1,072 files, Vue 595 files, JavaScript 26 files, Shell 2 files.

Documentation

Repowise documents ui in 3,844 pages generated from the source, 63 of them written explanations of the repository and its modules.

More on ui: summary and FAQ, codebase overview, code health.

Related guide: Best dependency graph tools for monorepos