Skip to content

Checklist tool that helps developers identify environment issues

License

Notifications You must be signed in to change notification settings

raphaelkieling/doctorenv

Repository files navigation

Doctorenv

Known Vulnerabilities codecov

Wiki documentation here

Doctorenv is a checklist tool that helps developers to check if they have everything to contribute in a project.

In the end the goal is Save time, nothing more! 🚀

How to install?

# Without install
npx doctorenv-cli

# Installing globally using npn
npm i -g doctorenv-cli

# Installing globally using yarn
yarn global add doctorenv-cli

I do not recommend to install locally yet, since you do not have any big reason to do it right now. In the future the idea is to have plugin system, hooks and type checking using require, up to you.

Why?

Sometimes you aren't sure if you have everything to contribute in a project. The Doctorenv should give you some help on:

  • Check what is missing in your environment to make it works
  • Giving you some Suggestions on how to fix in case you do not met some requirements
  • Easy to start using and change
  • Automatic fixers

Example of config:

// doctorenv.config.js
module.exports = ({ builder }) => {
  return builder
    .task('check package manager')
    .subTask('has npm', ({ bash }) => bash`npm --version`)
    .subTask('has yarn', ({ bash }) => bash`yarn --version`)
    .task('has env', ({ checkEnv }) => checkEnv('NODE_ENV'))
    .setFixableSuggestion(
      'Run source ./env.sh',
      ({ bash }) => bash`source ./env.sh`
    )
    .build()
}

Run:

# To check the default doctorenv.config.js
doctorenv check

# To check with a custom config
doctorenv check <custom-path-to-config>

Alt text

Changelog

You can check the changelog here.

How to contribute?

It's simple, just take a look at our Contributing guide.

Contributors

Daksh Singh Rathore
Daksh Singh Rathore

🔬 📖
harshvyas-22
harshvyas-22

🎨
Raphael Kieling
Raphael Kieling

💻

Development

# testing
npm run test
npm run test:watch

# run a specific example in dev mode
npm run dev check examples/NAME_HERE.config.js

Publishing

npm run publish
Temporary Icon from: Pharmacist icons created by Freepik - Flaticon

Releases

No releases published

Packages

No packages published