Valaria is a monorepo for browser UI primitives and custom elements.
- Package manager:
pnpm@10.14.0 - Language: TypeScript
- Release flow: Changesets
- Workspaces:
packages/*playground/*
Published as valaria.
Contains the core UI toolbelt package and its tests.
Published as @valaria/components.
Contains higher-level components, including the VirtualFocus exports.
Published as @valaria/virtual-scroll.
Contains the <virtual-scroll> custom element, browser examples, and tests.
Package-level documentation lives in packages/virtual-scroll/README.md.
The playground/ directory contains local apps and framework integrations used to exercise the packages during development, including:
Install dependencies:
pnpm installBuild the workspace from the repo root:
pnpm run buildRun all workspace tests:
pnpm testRun commands for a specific package:
pnpm --filter @valaria/virtual-scroll test
pnpm --filter valaria build
pnpm --filter @valaria/components devFrom the monorepo root:
pnpm run build- build the root TypeScript projectpnpm test- run tests recursively across workspacespnpm changeset- create a release changesetpnpm version- apply version updates from changesetspnpm release- publish release artifacts
Most packages also expose local scripts such as build, dev, test, and docs.
- Prefer running package-specific commands with
pnpm --filter <package> <script>. packages/virtual-scrollincludes runnable examples inexamples/.packages/coreincludes generated docs indocs/.- Some browser-oriented tests use Playwright as part of package test scripts.
.
├── packages/
│ ├── components/
│ ├── core/
│ └── virtual-scroll/
├── playground/
├── .changeset/
├── package.json
├── pnpm-workspace.yaml
├── tsconfig.base.json
└── tsconfig.build.json