B2c scaffold
Skill SalesforceCommerceCloud/b2c-developer-tooling/skills/b2c-experimental/skills/b2c-scaffold
Generate B2C Commerce cartridges, controllers, hooks, custom APIs, job steps, and Page Designer components from scaffold templates. Use this skill whenever the user needs to create a new cartridge, add a controller or hook to an existing cartridge, bootstrap a custom API endpoint, or generate boilerplate for job steps or Page Designer components — even if they just say "create a new cartridge" or "I need a controller for loyalty".From its SKILL.md
npx -y skills add SalesforceCommerceCloud/b2c-developer-tooling --skill b2c-scaffoldAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
4.3 KB, as published. Nobody here has run it
B2C Scaffold Skill
Use the b2c scaffold commands to generate B2C Commerce components from templates.
Tip: If
b2cis not installed globally, usenpx @salesforce/b2c-cliinstead.
Examples
List Available Scaffolds
# list all scaffolds
b2c scaffold list
# list only cartridge scaffolds
b2c scaffold list --category cartridge
# show extended info (description, tags)
b2c scaffold list -x
Generate a Cartridge
# generate interactively
b2c scaffold cartridge
# generate with name
b2c scaffold cartridge --name app_custom
# generate to specific directory
b2c scaffold cartridge --name app_custom --output ./src/cartridges
# skip prompts, use defaults
b2c scaffold cartridge --name app_custom --force
# preview without creating files
b2c scaffold cartridge --name app_custom --dry-run
Generate a Controller
# generate interactively (prompts for cartridge selection)
b2c scaffold controller
# generate with all options
b2c scaffold controller \
--option controllerName=Account \
--option cartridgeName=app_custom \
--option routes=Show,Submit
Generate a Hook
# generate a system hook
b2c scaffold hook \
--option hookName=validateBasket \
--option hookType=system \
--option hookPoint=dw.order.calculate \
--option cartridgeName=app_custom
# generate an OCAPI hook
b2c scaffold hook \
--option hookName=modifyBasket \
--option hookType=ocapi \
--option hookPoint=dw.ocapi.shop.basket.beforePOST \
--option cartridgeName=app_custom
Generate a Custom API
# generate a shopper API
b2c scaffold custom-api \
--option apiName=loyalty-points \
--option apiType=shopper \
--option cartridgeName=app_custom
# generate an admin API
b2c scaffold custom-api \
--option apiName=inventory-sync \
--option apiType=admin \
--option cartridgeName=app_custom
Generate a Job Step
# generate a task-based job step
b2c scaffold job-step \
--option stepId=custom.CleanupOrders \
--option stepType=task \
--option cartridgeName=app_custom
# generate a chunk-based job step
b2c scaffold job-step \
--option stepId=custom.ImportProducts \
--option stepType=chunk \
--option cartridgeName=app_custom
Generate a Page Designer Component
b2c scaffold page-designer-component \
--option componentId=heroCarousel \
--option componentName="Hero Carousel" \
--option componentGroup=content \
--option cartridgeName=app_custom
Get Scaffold Info
# see parameters and usage for a scaffold
b2c scaffold info cartridge
b2c scaffold info controller
Search Scaffolds
# search by keyword
b2c scaffold search api
# search within a category
b2c scaffold search template --category page-designer
Create Custom Scaffolds
# create a project-local scaffold
b2c scaffold init my-component --project
# create a user scaffold
b2c scaffold init my-component --user
# validate a custom scaffold
b2c scaffold validate ./.b2c/scaffolds/my-component
Built-in Scaffolds
| Scaffold | Category | Description |
|---|---|---|
cartridge | cartridge | B2C cartridge with standard structure |
controller | cartridge | SFRA controller with routes and middleware |
hook | cartridge | Hook with hooks.json registration |
custom-api | custom-api | Custom SCAPI with OAS 3.0 schema |
job-step | job | Job step with steptypes.json registration |
page-designer-component | page-designer | Page Designer component |
Related Skills
b2c-cli:b2c-code- Deploy generated cartridges to B2C instancesb2c:b2c-controllers- SFRA controller patterns and best practicesb2c:b2c-hooks- B2C hook extension pointsb2c:b2c-custom-api-development- Custom API development guideb2c:b2c-custom-job-steps- Job step implementation patternsb2c:b2c-page-designer- Page Designer component development