npm.io
0.0.21 • Published 2d ago

@ship-it-ui/cytoscape

Licence
MIT
Version
0.0.21
Deps
1
Size
80 kB
Vulns
0
Weekly
0
Stars
4

Ship-It Design System

The official design system and React component library for Ship-It Ops front-end applications. Single source of truth for design tokens, icons, components, patterns, and ShipIt-AI-specific composites.

What's inside

A pnpm + Turborepo monorepo. Four publishable packages, two internal config packages, and a Next.js docs site.

apps/
  docs-site/                Next.js 15 docs site — MDX, static export to GitHub Pages
packages/
  tokens/         (publish) @ship-it-ui/tokens   — colors, type, spacing, radius,
                                                 shadow, motion, breakpoints, z-index
  icons/          (publish) @ship-it-ui/icons    — IconGlyph + glyph map + SVGR pipeline
  ui/             (publish) @ship-it-ui/ui       — generic components + patterns + hooks
  shipit/         (publish) @ship-it-ui/shipit   — ShipIt-AI domain composites
                                                 (AI surfaces, graph, entity, marketing)
  tsconfig/       (internal) shared TypeScript presets
  eslint-config/  (internal) shared ESLint flat config
docs/                       Long-form repo docs (architecture, contributing, etc.)

Each publishable package has its own README.md. @ship-it-ui/shipit depends on @ship-it-ui/ui + @ship-it-ui/icons; @ship-it-ui/ui depends on @ship-it-ui/tokens + @ship-it-ui/icons. Apps may install only what they need.

Tech stack

Concern Choice
Framework React 18+ with TypeScript
Styling Tailwind v4 beta (@theme inline) over CSS-variable tokens
Theming Dark-first. :root is dark; [data-theme="light"] opts in.
Accent system OKLCH single-hue knob — --accent-h (default 200) reskins all
Headless behavior Radix UI primitives
Variant API class-variance-authority + clsx + tailwind-merge
Library build tsup (ESM + CJS + types)
Docs site Next.js 15 + MDX (static export)
Testing Vitest + @testing-library/react + @testing-library/user-event + vitest-axe
Versioning & release Changesets
Task orchestration Turborepo
Package manager pnpm 9
Node 24 (see .nvmrc)

Getting started

nvm use                    # Node 24 (per .nvmrc)
corepack enable            # ensures the right pnpm version
pnpm install
pnpm dev                   # docs site dev server on http://localhost:3000

Common scripts

Run from the repo root.

pnpm build                 # build all packages + docs static export
pnpm test                  # Vitest across every package (turbo-cached)
pnpm test:force            # same as `test`, but bypasses turbo's cache
pnpm typecheck             # tsc --noEmit across the project graph
pnpm lint                  # ESLint
pnpm format                # Prettier write
pnpm format:check          # Prettier check (no writes)
pnpm changeset             # describe a version bump for a PR

Per-package: pnpm --filter @ship-it-ui/ui test, etc.

CI

GitHub Actions workflows in .github/workflows/:

Workflow Triggers on What it does
ci.yml every PR + push to main format → lint → typecheck → test → build
changeset-check.yml every PR touching packages/* fails if a publish-worthy change has no .changeset/*.md
snapshot.yml release: snapshot label or manual publishes a 0.0.0-pr-<N>-* (or 0.0.0-snapshot-* off main) build to npm under the matching dist-tag
release.yml push to main with changesets opens "Version Packages" PR; publishes on merge

License

MIT

Keywords