- Headless: Stateful middle-layer between UI elements and the Coveo Platform.
- Atomic: Coveo's web-component library for building modern search experiences.
- Quantic: Coveo's LWC library for building Salesforce search experiences.
- Bueno: A simple schema validator.
- Auth: Functions to help authenticate with the Coveo platform.
- Headless React Samples: Various code samples using Headless inside a React application.
To install all dependencies and link local packages, run:
npm iTo install a dependency in a specific package, specify the workspace:
npm i lodash -w @coveo/headless-react-samplesTo build all projects for production, run:
npm run buildTo build a single project for production (for instance, the atomic package), run:
npx turbo run @coveo/atomic#buildAdd the --stencil switch if you are changing stencil files.
To start a single project in development (for instance, the quantic package), run:
npx turbo run @coveo/quantic#devTo run a specific task in a package separate it with colon e.g. to run test:watch inside quantic
npx turbo test:watch --filter=@coveo/quanticTo run the tests for a specific package (recommended) e.g. atomic package
npx turbo test --filter=@coveo/atomicFor e2e tests
npx turbo run @coveo/atomic#dev
# In a separate terminal
npx turbo run @coveo/atomic#e2eTo run e2e tests for specific files/components using the Cypress GUI
npx turbo e2e:watch --filter=@coveo/atomicnpm run lint:check
npm run lint:fixThe project uses git hooks with Husky. You can make sure hooks are correctly installed using the npm rebuild command.
To ensure a consistent development experience, add the following to your .vscode/settings.json in the project root:
These settings will:
- Use Biome as the default code formatter.
- Automatically organize imports and fix issues with Biome on save.
Note:
Actual formatting is controlled by the project'sbiome.jsoncconfiguration.
The above settings ensure your editor behavior matches project standards.
{ "editor.defaultFormatter": "biomejs.biome", "editor.codeActionsOnSave": { "source.organizeImports.biome": "explicit", "source.fixAll.biome": "explicit" }, "editor.formatOnSave": true }