Introduction
Visor is Low Orbit Studio's shared design system — components you own, tokens that keep you consistent.
What is Visor?
Visor is a two-layer design system distribution model:
-
Components → Registry (copy-and-own). Run
npx visor add buttonand the source files are copied directly into your project. No lock-in, full control. -
Tokens → npm package (
@loworbitstudio/visor-core). The only npm-distributed piece. CSS custom properties that all components reference. Updates propagate automatically vianpm update.
Why this model?
You can edit components without forking. The "own your components" philosophy means your design system works for you — not the other way around. Shared tokens keep design consistency effortless across every project.
Design System Architecture
Visor's token system follows a 3-tier architecture:
| Tier | Description | Example |
|---|---|---|
| Primitives | Raw values | --blue-500: #3b82f6 |
| Semantic | Named by purpose | --color-primary: var(--blue-500) |
| Adaptive | Theme-aware | Switches based on .theme-dark class |
All components reference CSS custom properties, never hard-coded values. Themes are distributable CSS variable sets shipped via @loworbitstudio/visor-core.
Getting Started
One command. Runnable Next.js app. Borealis-native.
In an empty directory, run:
npx @loworbitstudio/visor init --template nextjsThat single command scaffolds a complete, runnable Next.js App Router project with:
package.jsonplus@loworbitstudio/visor-coreand@loworbitstudio/visor-theme-enginealready installedapp/layout.tsxwired with FOWT prevention andglobals.cssimportapp/globals.cssgenerated from.visor.yamlvia the Next.js adapter.lo/borealis.jsonstamp with the Visor version that initialized the project
Then start the dev server:
cd my-app && npm run devAdd your first component:
npx visor add buttonThat's it. The component source lands in your project and you own it.
Heads up:
--template nextjsonly scaffolds into empty directories. For an existing app, use Manual Setup below.
Manual setup (non-Next.js or retrofit)
For non-Next.js projects, or to retrofit Visor into an existing app:
npx @loworbitstudio/visor initInstall the token package:
npm install @loworbitstudio/visor-coreThen import it in your app's root CSS:
@import '@loworbitstudio/visor-core';Then add a component:
npx visor add buttonBrowse the Components section to see everything available.
Available themes
The token package ships light and dark themes. Creative reference themes used in the docs site (Space, ENTR, Veronica, etc.) are not distributed via the token package — copy the relevant CSS file into your project to use them. See Theming for details.