Visit https://docs.comet-dxp.com/ to view the documentation.
Use @comet/create-app to create a new Comet DXP project. More information can be found in the docs.
The following tools need to be installed on your local machine.
Run the install.sh script to install dependencies and setup needed symlinks.
# Optionally set domain to use instead of localhost (add to e.g. ~/.bashrc)
export DEV_DOMAIN=myname.dev.vivid-planet.cloud # Vivid Planet network
sh install.shIt is recommended to run install.sh every time you switch to the main branch.
If you want to use features from @mui/x-data-grid-pro, you need to configure your MUI license key. Create a .env.local file in your project root and add your license key:
.env.local:
MUI_LICENSE_KEY=your_license_key_here
Before starting individual development processes, build all Comet packages at least once.
pnpm run build:packagesIt is recommended to build all packages every time you switch to the main branch.
dev-process-manager is used for local development. We recommend only running the development process you will need. Typically, you will need a subset of the available development processes.
Here are a few examples:
-
You want to add a new component to
@comet/adminStart the development process for
@comet/admin:pnpm exec dev-pm start @comet-adminCreate a development story in Storybook:
pnpm run storybook
-
You want to add a CMS feature to the API
Start the development process for
@comet/cms-api:pnpm exec dev-pm start @cms-apiStart Demo API:
pnpm exec dev-pm start @demo-apiThe Demo API will be available at http://localhost:4000/
-
You want to add a CMS feature to the Admin
Start the development process for
@comet/cms-admin:pnpm exec dev-pm start @cms-adminStart Demo API and Admin:
pnpm exec dev-pm start @demo-api @demo-adminThe Demo Admin will be available at http://localhost:8000/
See dev-pm.config.js for a list of all available processes and process groups.
pnpm exec dev-pm start @demoDemo will be available at
- Admin: http://localhost:8000/
- API: http://localhost:4000/
- Site: http://localhost:3000/
It is also possible to start specific microservices
pnpm exec dev-pm start @demo-api # (@demo-api|@demo-admin|@demo-site)pnpm run storybookStorybook will be available at http://localhost:26638/
pnpm exec dev-pm start @docsThe docs will be available at http://localhost:3300/
This will also start Storybook, due to some docs-pages being generated from storybook stories.
pnpm exec dev-pm shutdownWe provide dev:* scripts for the most common use cases.
For example, to start the Demo, you can also run:
pnpm run dev:demoHowever, we recommend directly using dev-process-manager for greater control over which development processes to start.
See package.json for a list of all available dev scripts.
Configure wml to sync the comet node_modules to the external project:
./wml-add.sh /path/to/my-projectIt may be necessary to configure watchman to watch your globally installed wml:
watchman watch $(dirname "$(dirname "$(which node)")")/lib/node_modules/wml/srcStart syncing the comet node_modules to the external project:
wml startPlease read our Contributing file.