# check-for-update

> Check for update manually or at configured interval with minimum configuration

Latest version **1.0.3** (published 2017-03-12) · MIT license · 0 weekly downloads

## Install

```sh
npm install check-for-update
pnpm add check-for-update
yarn add check-for-update
bun add check-for-update
```

## 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.0.3 |
| Published | 2017-03-12 |
| First published | 2017-02-06 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 3 |
| Known vulnerabilities | 0 (+1 in 1 direct dependencies) |
| Install scripts | no |
| GitHub stars | 2 |
| Author | Harsh Vakharia |
| Maintainers | harshjv |

## Links

- npm: https://www.npmjs.com/package/check-for-update
- Repository: https://github.com/harshjv/check-for-update
- Homepage: https://github.com/harshjv/check-for-update#readme
- Issues: https://github.com/harshjv/check-for-update/issues
- npm.io page: https://npm.io/package/check-for-update

## Dependencies (3)

- [semver](https://npm.io/package/semver.md) ^5.3.0
- [request](https://npm.io/package/request.md) ^2.79.0
- [parse-github-repo-url](https://npm.io/package/parse-github-repo-url.md) ^1.4.0

## Recent versions

- 1.0.3 (latest) — 2017-03-12
- 1.0.2 — 2017-03-12
- 1.0.1 — 2017-02-06
- 1.0.0 — 2017-02-06

## README

# 🔄 Check For Update

> **Heads up!** This works ***only*** with **Github** repositories that follows **[semver](http://semver.org)**.

Check for update manually or at configured interval with minimum configuration.


## Installation

```
npm install check-for-update
```


## API


### cfu = new CheckForUpdate(config)

Create `CheckForUpdate` instance with provided configuration.


```js
{
  packageJSON: Object,      // package.json object (optional when repositoryURL and currentVersion is given)
  repositoryURL: String,    // Github repository URL (optional when packageJSON is given)
  currentVersion: String,   // Current version of software (optional when packageJSON is given)
  checkOnLaunch: Boolean,   // Check for update when object is initiated
  intervalHrs: Number       // Interval to check for update in hours
}
```

### cfu.now()

Manually check for update.

### cfu.start()

Start checking for update manually (or when `checkOnLaunch` is `false`).

### cfu.stop()

Stop update checker.

### cfu.on('update_available', ({ currentVersion, newVersion, repoURL, updateURL }) => {})

Emitted when a new version/update is available.

### cfu.on('error', (error) => {})

Emitted when client encounters an error.


## Usage

```js
const CheckForUpdate = require('check-for-update')

const cfu = new CheckForUpdate({
  packageJSON: require('./package.json'),
  checkOnLaunch: true,
  intervalHrs: 12
})

// or

const cfu = new CheckForUpdate({
  repositoryURL: 'harshjv/donut',
  currentVersion: '1.2.3',
  checkOnLaunch: true,
  intervalHrs: 12
})

cfu.on('error', (data) => console.error(data))

cfu.on('update_available', (data) => {
  const { currentVersion, newVersion, repoURL, updateURL } = data

  // ...
})
```


## License

MIT

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