@coveops/headless-sado
v1.0.0
Published
[![npm version](https://badge.fury.io/js/@coveo%2Fheadless.svg)](https://badge.fury.io/js/@coveo%2Fheadless)
Downloads
4
Maintainers
Keywords
Readme
Coveo Headless
Using the library: Coveo Headless Library Official Documentation.
Contributing
Getting started
Once you have cloned the repo, follow the instructions in the top-level README.md to install dependencies and link packages.
To start the project in development mode, run:
npm run dev
To build the library for production, run:
npm run build
To run the unit tests, run:
npm test
To run the unit tests and watch, run:
npm run test:watch
To use @coveo/headless locally, you have to build the package by running:
npm run build
Redux
The headless project intensively uses "Redux" along with "Redux Toolkit", so prior knowledge is necessary.
Source folder structure
The base of the /src
folder should only contain exports.
/app
contains app-wide setup: Redux store, root reducer, middlewares.
/state
contains interfaces for the various application states.
/features
has folders that each owns the functionalities of a feature, which is a subpart of the redux state. Following the "ducks pattern", those files contain Redux slices & reducers that define the state shape. Each feature folder has a file with actions that can be exported with the project.
/controllers
contains all the headless controllers in folders. Those controllers are exported and used to provide abstraction from the store's features by being closer to the actual UI controllers of a customer's application.
/utils
contains common useful utilities.
/api
contains everything regarding api calls.
/test
contains test mocks.
Contribution guide: Adding a new controller.
Please see the contributor guide for guidance.
Contribution guide: Troubleshooting bundle content.
Please see the contributor guide for guidance.