Repository navigation
create-bht-component-registry@0.3.0
·
19 commits
to main
since this release
Minor Changes
- d61ffb4: Template: two new guide pages — The expanded version (what it adds, that it runs on your infrastructure with standard unchanged underneath, and that it is set up through Behive Tech consulting) and Terms (as-is, no warranty, limitation of liability, your responsibilities, third-party terms, privacy), also shipped as TERMS.md. The footer links Terms while the page exists; the "hosted" wording and the default "Hosted & expanded version" link are gone.
- 7e32883: Template: public and private packages side by side.
registry.config.json#privateRegistrynames where private packages go (GitHub Packages, Verdaccio, …);pnpm gen componentasks for a visibility and writes the matchingpublishConfig; the Changelog tab looks each package up on its own registry; private packages carry a Private badge; the release workflow adds the private registry's token (PRIVATE_REGISTRY_TOKEN, or the job'sGITHUB_TOKENfor GitHub Packages). A package's registry is permanent after its first release:pnpm check:publish(inverifyand CI) refuses a change. - f792e08: Template: hooks and utilities are first-class packages.
pnpm gen hookandpnpm gen utilscaffold them (categorieshooksandutils, in new registries' defaults); the docgen reads every exported function's signature,@param,@returnsand@examplewith the TypeScript compiler and shows them on the component page (hooks also get live examples from their compositions);docs.jsoncarries them too. New guide page: Hooks and utilities, with the JSDoc convention. - 4872c20: Template: a Docs section on the site. Every Markdown file under
docs/is a page (frontmatter: title, description, section, order; a folder is a section), listed in the header and a sidebar, with relative.mdlinks resolved and ```jsx live fences running as examples. The site reads the template's guide (apps/docs/default-docs/, replaced by `update`) and your `docs/` (never touched) as one tree: a file under `docs/` at the same relative path replaces the default page, and `hidden: true` in its frontmatter removes it — so making a guide page yours is a copy, with no bookkeeping. New registries start with their own Using this registry, Contributing and Standards pages under `docs/`. - 2dd5f59: Template: generators are now plop.
pnpm genlists every generator;pnpm gen component(orpnpm gen component <scope> <category> <name>to skip the prompts) replacespnpm gen --args …. Newdocgenerator writes a Markdown page intodocs/from a preset, andpnpm gen generatorwrites a commented skeleton intogenerators/<name>/. Both folders are yours:updatenever touches them. The template's own guide moved fromdocs/toapps/docs/default-docs/guide/(owned with the app), and a file at the same relative path underdocs/replaces the default page.CLAUDE.mdand a new.github/copilot-instructions.mdtell AI assistants to scaffold with the generators rather than by hand; the Generators guide says how to give the same rule to any other assistant. Prompts show examples, where the result lands, and how to fix an invalid answer. - 5faa6d3: Template: live examples run in an isolated preview frame (
/sandbox). A modal, drawer or toast now opens inside its own preview instead of over the docs page; previews size to their content, can be expanded, and open on their own in a new tab with any edits kept. A package can opt out of its catalog thumbnail withregistry.preview.thumbnail: false. - df2f200: Template:
@bht-component-registry/envnow carries everything a component package builds, lints, type-checks and tests with. The Vitest config and setup (jest-dom matchers, jsdom stubs) moved into it — the rootvitest.config.tsis a one-line re-export and is template-owned — and the*.module.scsstypings come from the env's tsconfig, so generated packages no longer carry aglobal.d.ts. New guide page: The env package. - 7e2b771: Template: design links. A component's
package.jsoncan declareregistry.design: [{ label, url }](the generator asks for a Figma URL); the site gains a Design tab with a card per link, Figma links optionally embedded (site.embedDesigns, off by default), andsite.designlinks the design-system file from the tokens page. New guide page: Design links. - cb39e3d: Template: a hook's or utility's parameter table has a Default column, like a component's props table. The docgen records a parameter's initializer as written (
initial = false→false) indocs.json(defaultValue, null when there is none).
Patch Changes
- 4445c71: Template: the Terms page and
TERMS.mdare now a short plain-language notice grounded in the MIT licence, the way open-source component libraries present theirs — what the licence means here, what is yours, third-party services, trademarks, privacy, and that consulting and the expanded version are under a separate agreement. Every package carries"license": "MIT", and the component, hook and util generators write it into new packages (change it to your own licence if you like). - 4735c5d: Template: the docs site's own components and routes now name every class through
getClassNamewith BEM names, the way registry components do — a root class per component,__childelements,--modifiervariants, one stylesheet per component with no selectors into another's. The convention is written down in the Standards seed page, the Components guide,CLAUDE.mdand the Copilot instructions. No visual change. - dd40cb9: Template: README snippets that call hooks at the top level and then render a multi-line element now run in the live preview. The setup/JSX split happened at the last line opening a tag — the closing tag of a multi-line element — so the opening tags stayed in the setup region and react-live got invalid code. It now splits at the first.