# semver-store
[](http://standardjs.com/) [](https://travis-ci.org/delvedor/semver-store)
An extremely fast semver based store.
## Install
```
npm i semver-store
```
## Usage
Use it is very easy, you just need to require the library and start adding values.
```js
const store = require('semver-store')()
store.set('1.2.0', { value: 42 })
console.log(
store.get('1.2.0') // { value: 42 }
)
```
## API
#### `set(version, store)`
Add a document to the store with the specified version.
The version **must** be conform with the [semver](http://semver.org/) specification.
#### `get(version)`
Get a document from the store with the specified version.
The version string could be a full version string or specify a range, such as `1.x`, in which case the highest version compatible will be returned. Specify `*` to get the highest version available.
#### `del(version)`
Deletes a document from the store with the specified version.
The version string could be a full version string or specify a range, such as `1.x`, in which case all the compatible values will be deleted.
#### `empty()`
Empties the store.
### Why is fast?
Internally uses a [prefix tree](https://en.wikipedia.org/wiki/Trie), which allows the search to be extremely performant.
## License
Licensed under [MIT](./LICENSE).