From product-builder
Bootstraps a prepared local repository into a pnpm TypeScript, Vite, Cloudflare, React Router, Tailwind, and shadcn/ui project. Use after preparing-repositories has returned LOCAL_REPOSITORY_PATH and REPOSITORY_STATUS, when the user asks to initialize, scaffold, or bootstrap the basic Product Builder codebase.
How this skill is triggered — by the user, by Claude, or both
Slash command
/product-builder:bootstrapping-codeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Require the successful output from `preparing-repositories` before taking action:
Require the successful output from preparing-repositories before taking action:
LOCAL_REPOSITORY_PATH: <absolute path>
REPOSITORY_STATUS: existing-local | cloned | created-and-cloned
If those values are missing, stop before bootstrapping and prepare the repository first. Do not choose a fallback directory yourself.
Use the returned LOCAL_REPOSITORY_PATH as the working directory.
pnpm for package initialization, package version checks, and package installation.pnpm view <package> version before installing, then install with @latest.react-router-patterns before adding or changing React Router code. Any generated React Router code must follow those patterns.preparing-repositories has not completed successfully.preparing-repositories has not resolved it.LOCAL_REPOSITORY_PATH already contains files other than repository metadata.work/, ./work, a temporary directory, the current workspace, or any agent-chosen folder.pnpm wrangler types must be re-run after any change to wrangler.jsonc bindings. Skipping this causes TypeScript errors in workers/app.ts because the generated Env interface is stale.init modifies tailwind.config.ts and app/styles/globals.css. If these files were already customized, the init may overwrite changes. Check the diff after running it.app/root.tsx to export a default component and a Layout. Missing either causes a blank page with no error in the browser console.cloudflareDevProxy() before reactRouter() in the plugins array. Wrong order causes the dev server to serve raw source instead of compiled output.preparing-repositories returned LOCAL_REPOSITORY_PATH and REPOSITORY_STATUS.LOCAL_REPOSITORY_PATH and REPOSITORY_STATUS are missing, stop before bootstrapping and prepare the repository first.LOCAL_REPOSITORY_PATH exists, is a git repository, and contains no pre-existing files other than repository metadata.react-router-patterns, then add the React Router page using 05-react-router-page.md.docs/:
docs/architecture.md using the template in architecture-template.md. Fill in the Overview with the product description. The Stack section should list only the base stack: Cloudflare Workers, TypeScript; React Router v7 (framework mode, SSR); Tailwind CSS, shadcn/ui. The Structure section should reflect the bootstrapped directory layout. Add a single convention link for Routes: **[Routes](conventions/routes.md)** — loader/action structure, protected routes, navigation.docs/conventions/routes.md using the template in convention-template.md. Seed it with key React Router patterns: route filenames describe role not URL syntax; use middleware only for cross-cutting request work; keep mutations in actions; ownership checks in the route/action that owns the resource param.README.md with a very basic overview of the bootstrapped application, including the stack, local development command, verification commands, and Cloudflare deployment target.AGENTS.md with basic agent instructions and the bootstrapped project structure. Include:
docs/architecture.md first for project context, then follow links to conventions and data model for detail. List the docs structure:
docs/architecture.md — stack, structure, conventions index, and implementation log.docs/conventions/ — project-specific patterns and anti-patterns.docs/features/ — feature specs (added during planning).When stopping because repository preparation has not provided the required inputs, say this directly:
I need a prepared GitHub repository and explicit local destination before I can bootstrap the Product Builder project.
When stopping because the local repository has pre-existing files, say this directly:
The local repository <path> has pre-existing files, so I stopped before bootstrapping. Remove the existing files or provide a new empty repository.
Include the files found when available.
preparing-repositories completed successfully.LOCAL_REPOSITORY_PATH and REPOSITORY_STATUS are available.pnpm view was used for latest package checks.react-router-patterns was loaded before React Router code was generated, and the generated code follows those patterns.wrangler types.pnpm format, pnpm typecheck, pnpm lint, and pnpm build pass after fixing generated-file issues.git status --short were reviewed.docs/architecture.md was created with the base stack, bootstrapped structure, and a Routes convention link.docs/conventions/routes.md was created with seed React Router patterns.README.md gives a very basic overview of the bootstrapped app, commands, and Cloudflare target.AGENTS.md includes basic agent instructions, the bootstrapped project structure, a Project Documentation section referencing docs/, and React Router guidance.Provides CDSS development patterns for drug interaction checking, dose validation, clinical scoring (NEWS2, qSOFA), and alert classification integrated into EMR workflows.
npx claudepluginhub adrianhdezm/mystack --plugin product-builder