liteship
v0.3.1
Published
LiteShip umbrella — installs the full @czap/* constraint-based adaptive rendering stack in one dependency
Maintainers
Readme
liteship
One dependency that installs every publishable @czap/* package at the same version — the front door to LiteShip. The mental model is one sentence: a continuous signal crosses boundaries into named states, and named states project into outputs (CSS, ARIA, shaders).
Install this directly when you're starting a project and want the whole stack version-locked. If you only need one slice, install that slice instead —
@czap/astroalone pulls the core rendering stack for the Astro path.
Install
npm install liteship # or yarn add liteshippnpm users: pnpm's strict node_modules does not hoist transitive dependencies, and liteship re-exports nothing, so import '@czap/core' will not resolve through it. Add the @czap/* packages you import as explicit dependencies (pnpm add @czap/core @czap/astro), or hoist the scope with public-hoist-pattern[]=@czap/* in .npmrc. npm and yarn's hoisted layouts work as-is.
30 seconds
import { Boundary } from '@czap/core'; // installed for you by liteship
const viewport = Boundary.make({
input: 'viewport.width',
at: [
[0, 'mobile'],
[768, 'tablet'],
[1280, 'desktop'],
],
});
console.log(Boundary.evaluate(viewport, 800)); // 'tablet'Logs tablet — the named state for a 768–1279px viewport width. That signal-to-state step is the foundation; everything else (compiled CSS, host integrations, motion) projects from it.
Where it sits
The umbrella sits above everything: it depends on all twenty publishable @czap/* packages, pinned at exactly its own version, and deliberately re-exports none of them — the host integrations (@czap/astro, @czap/vite, @czap/cloudflare) carry host-specific peer expectations, and a barrel importing all of them would force every consumer to satisfy all of them at once. You import from the individual scopes exactly as the docs show; this package just makes sure they're installed. Its only export is LITESHIP_PACKAGES, the list of what it installs. See the package surfaces map for the full layout.
Docs
- Getting started
- Authoring model — how definitions compose into surfaces
- Glossary — the vocabulary used above
- API reference — generated from source
Part of LiteShip — powered by the CZAP engine (Content-Zoned Adaptive Projection), distributed as @czap/* packages.
