1.0.0 • Published 10 months ago

@coveops/headless-sado v1.0.0

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
10 months ago

npm version

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.