@coveo/angular
v1.36.10
Published
Coveo schematic for angular
Downloads
663
Readme
@coveo/angular
The @coveo/angular
package contains the necessary components to set up a search page using Coveo Headless and Angular Material with the Angular CLI.
If you want to create a new Coveo Headless-powered search page with the Angular web framework from scratch, it is simpler to use the coveo ui:create:angular
command in the Coveo CLI. The Coveo CLI will handle a lot of complexity for you. Calling the @coveo/angular
package directly from the Angular CLI should rather be done to help you integrate a search page to an already existing Angular project.
Installation
To add a Coveo Headless-powered search page using Material Angular to an existing Angular project, execute the following steps:
- Run
ng add @coveo/angular --org-id=<org-id> --api-key=<api-key>
, where you replace<org-id>
by the unique identifier of your Coveo organization, and<api-key>
by an API key granting the impersonate privilege in the target organization. - Answer the questions prompted in your terminal to configure your interface styling.
- In your project, navigate to the new
server
folder. This is an Express server which generates Coveo search tokens. - The folder should contain a
.env.example
file. Create a copy of that file and rename it.env
. - In that new
.env
file, replace all placeholder variables (<...>
) by the proper information for your organization. For more involved configurations, you can modify the request parameters used in themiddlewares/searchToken.ts
file. - You can now go back to the root directory of your project and serve it by running
ng serve
.
Contributing
Component schematics
TODO
Development
TODO
Testing
To test the schematic locally, install @angular-devkit/schematics-cli
globally and use the schematics
command-line tool. That tool mimics generate
and add
commands of the Angular CLI.
Check the documentation with
schematics --help
First of all, create a new project:
ng new my-test-app --routing --style css
Make sure to link your local schematic to the project you want to use it in.
cd my-test-app
npm link /path/to/coveo-cli/packages/ui/angular
You can also use
npm pack
in your schematics project, thennpm install /path/to/artifact.tar.gz
in your Angular project. This mimicsnpm install
more than npm link.
Run your schematic
schematics @coveo/angular:headless-engine --org-id<org-id> --api-key=<api-key> --dry-run
Unit Testing
npm run test
will run the unit tests, using Jasmine as a runner and test framework.
Publishing
To publish, simply do:
npm run build
npm publish
That's it!