@20i/mrm-preset
v1.3.0
Published
mrm preset to set up eslint, prettier, lint-staged, husky, and typescript
Downloads
26
Readme
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,
- Add a publish
NPM_TOKEN
to your github repo secrets - Bump the package.json version
- Make a release
For effective changelogs, be sure to add the labels found in release.yml to PRs.