@20i/mrm-preset

1.3.0 • Public • Published

mrm-preset

mrm preset to set up nvm, eslint, prettier, lint-staged, husky, and typescript.

Also includes a separate task for publishing npm libraries.

Usage

Setup all the things!

npx mrm all --preset @20i/mrm-preset
# or for yarn berry
yarn dlx mrm all --preset @20i/mrm-preset

Details

Each of these can be set up individually. To see all available tasks, run npx mrm --preset @20i/mrm-preset

nvm

npx mrm nvm --preset @20i/mrm-preset

Every project should have a .nvmrc file. Currently this defaults to 16, but you can change it to whatever you need.

nvm can be installed by following their installation instructions

eslint

npx mrm eslint --preset @20i/mrm-preset

The @20i/eslint-config will be installed with prettier and typescript support by default. See the package for more details.

If React or React Native are found as dependencies, additional eslint packages will be installed. This command can be run again after adding react if needed.

lint-staged

npx mrm lint-staged --preset @20i/mrm-preset

This also sets up husky to run as a pre-commit hook. The default command is to use a precommit npm script, but that can be adjusted in .husky/pre-commit and in your package.json.

.gitignore

npx mrm gitignore --preset @20i/mrm-preset

Configured with default values for a node project and yarn berry.

Default mrm presets

Any default preset can be run with npx mrm <PRESET>

typescript

Currently, this just runs the mrm preset for typescript. PRs are welcome to update this :D

readme

Will only run if a readme is not already present.

license

Will only run if a license is not already present.

editorconfig

This is a nifty config to help your editor have better default values. For more options, check out editorconfig docs.

Not included in all

ci-publish

npx mrm ci-publish --preset @20i/mrm-preset

ci-publish will add a .github/workflows/ci-publish.yml file to your project for auto publishing to npm on releases. It also adds a release.yml template to help with Github's auto release notes.

Dev

Publish to npm

This package is published to npm using the Publish CI workflow.

The workflow is configured to publish the package to npm after a successful release and package.json version bump.

To use,

  1. Add a publish NPM_TOKEN to your github repo secrets
  2. Bump the package.json version
  3. Make a release

For effective changelogs, be sure to add the labels found in release.yml to PRs.

Package Sidebar

Install

npm i @20i/mrm-preset

Weekly Downloads

2

Version

1.3.0

License

MIT

Unpacked Size

18.4 kB

Total Files

10

Last publish

Collaborators

  • hiddn
  • valery20i
  • tony20i
  • gelfer
  • keeto-20i
  • mdickinson01
  • izzylan-twentyideas
  • chrisrbailey
  • louis-20i
  • james-20i
  • 20i-npm-service
  • drewdahl
  • antonioortega
  • keith20i
  • wilblack
  • trevordilley
  • nikki-20i
  • wasredacted