com um clique
bklit-ship
// bklit-ui monorepo contributors only — ship a chart or component from playground prototype to production in packages/ui with docs and registry.
// bklit-ui monorepo contributors only — ship a chart or component from playground prototype to production in packages/ui with docs and registry.
bklit-ui monorepo contributors only. Use automatically when building a new chart, editing an existing chart, prototyping chart props or animation, or working on apps/web/app/playground/. Scaffolds the editor playground with left motion pane, right controls pane, and center chart frame.
Bklit UI charts and data visualization for any project using the @bklit shadcn registry. Install, compose, theme, and animate charts correctly. Triggers when working with @bklitui/ui/charts, @bklit components, data visualization, dashboards, or chart theming. Also invoke manually for chart tasks.
Guardrails for adding unit tests in bklit-ui without over-testing. Use when the user mentions unit test, unit tests, tests, test coverage, add tests, write tests, vitest, jest, or asks whether something should be tested.
Open a pull request the bklit-ui way: stage and commit with pre-commit hooks, run ultracite from the repo root, run a production test build, fix failures, push, and create a PR with a structured summary. Use when the user asks to commit, push, open a PR, "ship it", or run the full pre-PR checklist.
Add X (Twitter) testimonials to the bklit homepage. Fetches username, avatar, and tweet text from a status URL and appends an entry to apps/web/lib/testimonials.ts. Use when the user shares an x.com/twitter.com tweet URL to add or replace a testimonial.
Generates llms.txt and llms-full.txt files for LLM-friendly project documentation following the llms.txt specification. Use when the user wants to create LLM-readable summaries, llms.txt files, or make their wiki accessible to language models.
| name | bklit-ship |
| description | bklit-ui monorepo contributors only — ship a chart or component from playground prototype to production in packages/ui with docs and registry. |
| disable-model-invocation | true |
This skill is for bklit-ui monorepo contributors taking an experimental chart or component from prototype (usually on an untracked route like the playground) into production: published in the UI package, documented, and ready for users.
bklit/bklit-ui and have a working prototype on a temporary route (e.g. apps/web/app/playground/page.tsx) and want to ship it.Follow these steps in order. Treat this as a checklist; each step has concrete locations in the repo.
packages/ui/ in the right place (e.g. packages/ui/src/charts/ for charts).packages/ui/src/charts/index.ts.exports in package.json for specific entry points, add or update the relevant entry so the new component is importable as @bklitui/ui/charts (or the appropriate path).apps/web/app/playground/page.tsx) so the app no longer depends on in-app-only copies of the component.Documentation lives under apps/web/. Do all of the following.
Update existing component docs when shipping extends an existing chart (new props, subcomponents, or behavior):
line-chart.mdx for Grid highlightRowValues, ChartTooltip indicatorColor).content/docs/utility/grid.mdx, tooltip.mdx).profit-loss-line.mdx).Chart examples (live demos on /charts/[slug])
/charts/line-chart, not only a new docs preview).apps/web/components/charts/chart-slugs.ts and register examples in apps/web/components/charts/chart-examples.tsx (CHART_NAV_ITEMS / factory registry as appropriate).Dedicated doc page (when shipping a new composable or chart kind)
apps/web/content/docs/components/<name>.mdx with frontmatter, <ComponentPreview>, installation, usage, and props — consistent with existing component docs.apps/web/content/docs/components/meta.json (desktop sidebar).apps/web/components/docs/site-header.tsx (mobile nav).apps/web/lib/studio/studio-parsers.ts — URL state keys and defaultsapps/web/lib/studio/registry-control-groups.ts — control groups for the right paneapps/web/lib/studio/registry.tsx — render preview + generateCodeapps/web/components/studio/studio-state-provider.tsx when switching chart type (e.g. setChart overrides)pnpm registry:build.apps/web/public/r/ from packages/ui. Ensure new components are listed in packages/ui/registry.json when they should be installable via shadcn.Run from repo root until clean:
pnpm lint
pnpm format
pnpm --filter @bklitui/ui test # when package logic changed
pnpm build
pnpm registry:build # if not already run in step 4
Fix all errors; repeat until hooks pass on commit.
feat(charts): add ProfitLossLine component).packages/ui and exported/charts/** routepnpm registry:build)pnpm lint, tests (if applicable), and pnpm build pass| Step | Location |
|---|---|
| Chart exports | packages/ui/src/charts/index.ts |
| Chart slugs | apps/web/components/charts/chart-slugs.ts |
| Chart examples (nav + registry) | apps/web/components/charts/chart-examples.tsx |
| Component docs | apps/web/content/docs/components/<name>.mdx |
| Utility docs (Grid, Tooltip, …) | apps/web/content/docs/utility/*.mdx |
| Sidebar (desktop) | apps/web/content/docs/components/meta.json → pages |
| Mobile nav | apps/web/components/docs/site-header.tsx → components array |
| Studio registry | apps/web/lib/studio/registry.tsx |
| Studio controls | apps/web/lib/studio/registry-control-groups.ts |
| Studio URL state | apps/web/lib/studio/studio-parsers.ts |
| Registry (source) | packages/ui/registry.json; build output: apps/web/public/r/ |
| Registry build | From root: pnpm registry:build |