vega-lite-dev-config
Version-controlled build config for easy re-use and sharing using Beemo.
Install
yarn add --dev vega-lite-dev-config
Before using the build config provided you should remove any older dependencies or config files for the drivers you intend to use (e.g., remove eslint
and .eslintrc
). vega-lite-dev-config
will handle these dependencies, and it will auto-generate the config files for you.
Using drivers
This project is built with beemo, and therefore requires a ".config/beemo.ts"
configuration file with a list of drivers you want to enable. You can optionally configure some drivers as shown below:
import { Config } from "vega-lite-dev-config";
const config: Config = {
module: 'vega-lite-dev-config',
drivers: {
babel: true,
prettier: true,
eslint: true,
jest: true,
typescript: {
buildFolder: "build"
}
},
settings: {
node: true,
react: false,
babel: {
jest: true
}
}
};
If you want to customize the drivers, you need to create overrides as described in the Beemo docs.
Executing drivers
Executing a driver will initialize Beemo's pipeline, generate configuration files (e.g., it will generate a .eslintrc
or prettier.config.js
, and execute the underlying driver binary and logging to the console.
All arguments passed to Beemo are passed to driver.
You may define these commands as scripts in your package.json:
{
"scripts": {
"prepare": "beemo create-config --silent",
"test": "beemo jest",
"test:inspect": "node --inspect-brk ./node_modules/.bin/jest --runInBand",
"prettierbase": "beemo prettier '*.{css,scss,html}'",
"eslintbase": "beemo eslint .",
"format": "yarn eslintbase --fix && yarn prettierbase --write",
"lint": "yarn eslintbase && yarn prettierbase --check",
"types": "beemo typescript",
"types:watch": "beemo typescript --watch"
}
}
Publishing
Publishing is handled by a 2-branch pre-release process, configured in publish.yml
. All changes should be based off the default next
branch, and are published automatically unless a skip-release
label is applied to the PR.
- PRs made into the default branch are auto-deployed to the
next
pre-release tag on NPM. The result can be installed with npm install vega-tooltip/@next
.
- When merging into
next
, please use the squash and merge
strategy.
- To release a new stable version, open a PR from
next
into stable
using this compare link.
- When merging from
next
into stable
, please use the create a merge commit
strategy.