Mrm

Codemods for your project config files

Get Started

What is Mrm

Command line tool to help you keep configuration (package.json, .gitignore, .eslintrc, etc.) of your open source projects in sync.

Mrm features

Doesn’t overwrite your data unless you want to

Minimal changes: keeps the original file formatting or read the style from EditorConfig

Minimal configuration: tries to infer configuration from the project itself or from the environment

Customizable tasks for popular tools like ESLint, Prettier, lint-staged, etc. included

Custom tasks and tools to work with JSON, YAML, INI, Markdown and new line separated text files

Sharing tasks via npm and grouping them into presets

Mrm use cases

Want to hack quickly on some idea?

Install everything you need for a basic JavaScript project with a single command, and start working in less than a minute:

git init && npx mrm package editorconfig gitignore eslint prettier lint-staged

Ready to share your project with the world?

Run Mrm again to bootstrap basic docs, and tweak them as you like.

npx mrm license readme contributing

Want to work on a very old project?

Run the same commands again to upgrade and migrate all the configs.

npx mrm package editorconfig gitignore eslint prettier lint-staged

Learn more about Mrm

Watch 'Automating open source project configuration with Mrm' talkRead 'Automating open source project configuration with Mrm' article