Vendure Plugin Template
This is a template for a plugin for the Vendure e-commerce framework.
It is intended for plugins which are to be distributed as npm packages, either publicly or privately. Further information on how Vendure plugins can be used can be found in the vendure.io Plugins documentation.
e2e Testing
See src/e2e
for details, run tests with:
yarn test
GraphQL Codegen
This repository can automatically generate GraphQL types for use in the plugin code (see src/e2e/plugin.e2e-spec.ts
). To generate the types, ensure the development server is running, and use the command:
yarn dev:generate-types
Linting
This repository uses eslint & Prettier for finding and fixing common code issues and formatting your code in a standard way. To identify and fix issues, use the command:
yarn lint:fix
Development Server
A development server is configured in the dev-server
folder, using Docker and Docker Compose to spin up a Postgres database, as well as a server and worker. This is used to test the plugin during development.
To start the server, run:
yarn dev:run
To populate or reset the database, run the following command:
yarn dev:populate
To restart the server (only) after a change, use the following command:
yarn dev:restart
Note: The Docker containers must be rebuilt when updating dependencies. Use the following command:
yarn dev:rebuild