# adviser **Repository Path**: mirrors_Jam3/adviser ## Basic Information - **Project Name**: adviser - **Description**: Jam3 quality advisor. Integrates checking for best practices at Jam3 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-11-23 - **Last Updated**: 2026-03-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

# Adviser [![npm](https://img.shields.io/npm/v/adviser.svg)](https://www.npmjs.com/package/adviser) [![npm](https://img.shields.io/npm/l/adviser.svg)](https://github.com/jam3/adviser/blob/master/LICENSE) [![Build Status](https://travis-ci.org/Jam3/adviser.svg?branch=master)](https://travis-ci.org/Jam3/adviser) [![Known Vulnerabilities](https://snyk.io/test/github/jam3/adviser/badge.svg)](https://snyk.io/test/github/jam3/adviser) ![npm](https://img.shields.io/npm/dm/adviser) [![Maintainability](https://api.codeclimate.com/v1/badges/c3e02561069853a74f9b/maintainability)](https://codeclimate.com/github/Jam3/adviser/maintainability) > Modular task runner with a linter fashion > https://jam3.github.io/adviser

> Thanks [@pedrohsbarroso](https://twitter.com/pedrohsbarroso) for the logo --- # Table of Contents - [Installation](#installation) - [Usage](#usage) - [Built in rules](#built-in-rules) - [Release](#release) - [Tests](#tests) - [API](#api) - [Contributing](#contributing) - [Support](#support) - [Related](#related) - [License](#license) ## Installation ``` npm install -g adviser ``` ## Usage Adviser's goal is to run rules defined in a configuration file. It doesn't get involve in what the rules do; it just run them and control them. In order to use it, you need to: 1. Create a configuration file 2. (Optional) Install the plugins you've like to use 3. Set the rules we want to use ### Run adviser `$ adviser` If you run adviser without any arguments it will try to find a valid configuration file in the current directory and continues in through the parent directories until find a configuration file. ### CLI Arguments `-c, --config` Specify config file path `-i, --init` Run config initialization wizard `-d, --debug` Output debugging information `-V, --verbose` Display extra information `-t, --tags` Run rules that match tags `-h, --help` Show help `-v, --version` Output the version number ### Configuration example file ``` { "plugins": ["plugin1", "plugin2"], "rules": { "plugin1/exampleWarnRule": "warn", "plugin1/exampleErrorRule": "error", "plugin1/exampleOffRule": "off", "plugin2/exampleNumberWarnRule": 1, "plugin2/exampleNumberErrorRule": 2, "plugin2/exampleNumberOffRule": 0, "plugin2/exampleFullWarnRule": ["warn", {options: 'options'}], "plugin2/exampleFullErrorRule": ["error", {name: 'plugin'}], "plugin2/exampleFullNumberWarnRule": [1, {name: 2}], "plugin2/exampleFullNumberErrorRule": [2, {}] } } ``` ## Built in rules All the rules documentation is located inside `/docs/rules` _Rules_: - package-json-properties: Includes options to restrict and blocklist properties on the package.json - root-files: Includes options to restrict and blocklist files on the root directory. ## Release To releasing new versions we are using [standard-version](https://github.com/conventional-changelog/standard-version). Steps: 1. When PRs/commits land to your master branch, select the Squash and Merge option. 2. Add a title and body that follows the [Conventional Commits Specification](https://www.conventionalcommits.org). 3. Run `$ git checkout master; git pull origin master` 4. Run `$ npm run release` 5. Run `$ git push --follow-tags origin master && npm publish` ## Tests ### Unit Tests There is a small set of tests implemented using Jest, to run them use: `$ npm test` ### Integration Tests To test `adviser` running with built-in rules, run `$ npm run adviser` on the directory `__tests__/integration` #### External Plugins To use plugins and rules you can install one of the plugins created by the same team that created adviser: - [https://github.com/Jam3/adviser-plugin-dependencies](https://github.com/Jam3/adviser-plugin-dependencies) - [https://github.com/Jam3/adviser-plugin-audit-npm](https://github.com/Jam3/adviser-plugin-audit-npm) ## Contributing Please read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests. ## License [MIT](LICENSE)