@activeprospect/integration-dev-dependencies

devDependencies package for LeadConduit integrations

Usage no npm install needed!

<script type="module">
  import activeprospectIntegrationDevDependencies from 'https://cdn.skypack.dev/@activeprospect/integration-dev-dependencies';
</script>

README

Integration Dev Dependencies

Centralizes management and updates of common devDependencies used by LeadConduit integrations.

Usage

Note that in this package, they're listed as dependencies, but in your integration module, this should in fact be included as an entry in devDependencies:

npm install --save-dev @activeprospect/integration-dev-dependencies

Conversion

To convert old integrations to use this package, you can run its convert.js script. Once the package is added to devDependencies (see above), just run:

npx convert

This will correct ESLint configuration, modify a few source files if needed, and update package.json with revised dependencies, as well as a few new scripts: fixlint, lint, and watch (if the integration has a UI).

Linting

Installation of this package installs the ESLint configuration file .eslintrc.js via symbolic link to the parent package.

This can be used by your IDE, or run via npm scripts: npm run lint or npm run fixlint.

Live webpacking with watch

Instead of using webpack-dev-middleware, this package supports live updating of webpacked rich UI (RUI) files during development via Webpack's "watch" functionality.

In a separate terminal session from your local LeadConduit server, run npm run watch. This updates the webpacked source used by the RUI, and then stays running. Whenever one of the RUI files is updated (though not /api code, which runs server-side), this will rerun webpack automatically. This allows changes to be made and reloaded more quickly and easily in the browser while developing.