All you need to develop packages/apps.

Usage no npm install needed!

<script type="module">
  import sifrrDev from 'https://cdn.skypack.dev/@sifrr/dev';


sifrr-dev ยท npm version

GitHub license CircleCI Coverage Status Dependabot badge

Development tools for sifrr packages, webapps


Type Size
Normal (dist/sifrr.dev.cjs.js) Normal


  • getRollupConfig Rollup configs to bundle JavaScript/TypeScript for node packages, es modules and browser packs. Supports node syntax as well as es module syntax, and TypeScript.
  • generateChangelog Generate Changelog during release
  • loadDir Load directory recursively
  • eslintrc ESLint config and prettier
  • deepMerge Deep Merge Objects
  • checkTag check if a tag exists on github
  • exec async execute a shell command with stdout and stderr
  • gitAddCommitPush run command > git add files > git commit > git push
  • runTests Run a full fledged test suite using mocha, chai, sinon, puppeteer, etc. Supports node syntax as well as es module syntax.

Other packages



Just add .huskyrc and you are good to go.


Add this to your eslintrc config

  extends: ['sifrr']

and add pre-commit hook in your .huskyrc

  "hooks": {
    "pre-commit": "yarn eslint --fix \"src/**/*.js\" && git add -A"

sifrr eslint config extends prettier config and plugin, you can add prettier.config.js if you want to change default options for prettier.


add commit-msg hook in your .huskyrc

  "hooks": {
    "commit-msg": "yarn commitlint -e $HUSKY_GIT_PARAMS"

add commitlint.config.js to your root folder

module.exports = {
  extends: ['@commitlint/config-conventional']

Upload coverage to Coveralls

set COVERALLS_REPO_TOKEN environment variable, run tests with lcov reporter, Upload with this command:

cat ./coverage/lcov.info | yarn coveralls


Add tihs to your .eslintrc.js

module.exports = {
  extends: ['@sifrr']


Add prettier.config.js, and it will be picked by eslint. Add prettier extension in code editor you use for best use.