# sidekick

> Your code, made perfect.

Latest version **1.12.2** (published 2016-12-01) · AGPL-3.0 license · 0 weekly downloads

## Install

```sh
npm install sidekick
pnpm add sidekick
yarn add sidekick
bun add sidekick
```

Provides the command `sidekick`.

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.12.2 |
| Published | 2016-12-01 |
| First published | 2012-04-26 |
| Weekly downloads | 0 |
| License | AGPL-3.0 |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >= 4.2.0 |
| Dependencies | 16 |
| Known vulnerabilities | 0 (+9 in 3 direct dependencies) |
| Install scripts | no |
| GitHub stars | 16 |
| Maintainers | rishson, sidekick, timruffles |
| Keywords | javascript, lint, quality, static-analysis |

## Links

- npm: https://www.npmjs.com/package/sidekick
- Repository: https://github.com/sidekickcode/sidekick
- Homepage: https://github.com/sidekickcode/sidekick#readme
- Issues: https://github.com/sidekickcode/tracker/issues
- npm.io page: https://npm.io/package/sidekick

## Dependencies (16)

- [ttys](https://npm.io/package/ttys.md) 0.0.3
- [uuid](https://npm.io/package/uuid.md) ^2.0.2
- [chalk](https://npm.io/package/chalk.md) 1.1.3
- [debug](https://npm.io/package/debug.md) 2.2.0
- [rpcjs](https://npm.io/package/rpcjs.md) ^1.1.0
- [yargs](https://npm.io/package/yargs.md) 4.3.2
- [lodash](https://npm.io/package/lodash.md) 3.10.1
- [bluebird](https://npm.io/package/bluebird.md) 2.9.34
- [fs-extra](https://npm.io/package/fs-extra.md) ^0.30.0
- [proxytron](https://npm.io/package/proxytron.md) ^1.0.5
- [easy-stdin](https://npm.io/package/easy-stdin.md) ^1.0.1
- [cli-spinner](https://npm.io/package/cli-spinner.md) 0.2.4
- [@sidekick/common](https://npm.io/package/@sidekick/common.md) ^3.3.9
- [@sidekick/runner](https://npm.io/package/@sidekick/runner.md) ^0.3.1
- [@sidekick/git-helpers](https://npm.io/package/@sidekick/git-helpers.md) ^1.2.0
- [@sidekick/analyser-manager](https://npm.io/package/@sidekick/analyser-manager.md) ^2.2.7

## Alternatives

- [eslint-plugin-sonarjs](https://npm.io/package/eslint-plugin-sonarjs.md) — 2.9M weekly downloads
- [eslint-config-expo](https://npm.io/package/eslint-config-expo.md) — 1.5M weekly downloads
- [@matter/protocol](https://npm.io/package/@matter/protocol.md) — 63.5K weekly downloads
- [@eventcatalog/linter](https://npm.io/package/@eventcatalog/linter.md) — 24.8K weekly downloads
- [@inrupt/eslint-config-base](https://npm.io/package/@inrupt/eslint-config-base.md) — 4.5K weekly downloads

## Recent versions

- 1.12.2 (latest) — 2016-12-01
- 1.12.0 — 2016-08-12
- 1.11.3 — 2016-08-12
- 1.11.2 — 2016-07-15
- 1.11.1 — 2016-07-15
- 1.10.2 — 2016-07-13
- 1.10.1 — 2016-07-13
- 1.10.0 — 2016-07-01
- 1.9.1 — 2016-06-25
- 1.9.0 — 2016-06-23
- 1.8.8 — 2016-06-22
- 1.8.7 — 2016-06-22
- 1.8.6 — 2016-06-22
- 1.8.5 — 2016-06-22
- 1.8.4 — 2016-06-21
- … 34 more at https://npm.io/package/sidekick/versions

## README

# Sidekick

[![Build Status](https://travis-ci.org/sidekickcode/sidekick.svg?branch=master)](https://travis-ci.org/sidekickcode/sidekick)

Sidekick - your code, made perfect.

## Pre-requisites

We need `git` to be installed on your machine.


## Installation

```sh
npm i sidekick -g
```

## Initialisation

Sidekick does not ship with any analysers, so you will need to install them. Its really easy to do:

```sh
sidekick analysers --install
```

You can check that your system is configured correctly:

```sh
sidekick config
```

If `git` is not available on your path, then you will need to tell us where it has been installed to:

```sh
sidekick config --git=/some/path/to/git
```


## Usage

###You can run Sidekick on your CI server:

```sh
sidekick run --ci
```

This will install all the analysers that are needed, run them against your code and optionally fail the build.

#### Travis integration

```sh
sidekick run --travis
```

Will analyse just the changes that prompted the travis build. This is great for analysing Pull Requests with
just 2 lines of config!

###You can run Sidekick against code on your machine:

```sh
cd your/repo
sidekick run
```

or

```sh
sidekick run path/to/your/repo
```

This will evaluate the working copy of the repo's code on your machine.

You can use `--compare` and `--versus` cli arguments to compare your working copy with other local or remote branches.

###You can configure how sidekick analyses your files

By default, we look at the contents of your repo and run analysers that we think will be useful, e.g. if we find
JavaScript files, we will run a JavaScript TODO/FIXME finder, if we find a `package.json` file, we will run our
`david-dm` analyser on your dependencies..

You can add a `.sidekickrc` file to your repo to tell us what analysers you would like to run, and which ones can
fail the build. To create a default `.sidekickrc` file:

```sh
sidekick init
```

## Git push integration and GUI

Sidekick also has a git pre-push hook and a GUI that helps you fix your issues before they are pushed to a remote repo.
 
This GUI is in beta at the moment.
Please go to [our web site](https://sidekickcode.com) to sign up for the beta.

If you want to get support then we have a [chat room](https://gitter.im/sidekickcode/support).
If you want to raise issues then you can do so [here](https://github.com/sidekickcode/tracker/issues).

Thanks for trying Sidekick.

---
_Source: https://npm.io/package/sidekick · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
