<commit_before># medea

A persistent key-value storage library.

* Can be embedded in Node.js applications.
* Support for `get`, `put`, and `remove` operations.
* Influenced by Basho's [Bitcask](https://github.com/basho/bitcask) key-value store.
* Values can be any string or `Buffer`.

## Contents

- [Example](#example)
- [Install](#install)
- [Usage](#usage)
  - [medea.open([directory], callback)](#medeaopendirectory-callback)
  - [medea.get(key, callback)](#medeagetkey-callback)
  - [medea.put(key, value, callback)](#medeaputkey-value-callback)
  - [medea.remove(key, callback)](#medearemovekey-callback)
  - [medea.sync(callback)](#medeasynccallback)
  - [medea.close(callback)](#medeaclosecallback)
  - [medea.listKeys(callback)](#medealistkeyscallback)
  - [medea.mapReduce(options, callback)](#medeamapreduceoptions-callback)
- [How It Works](#how-it-works)
  - [Keydir](#keydir)
  - [Data Files](#data-files)
  - [Hint Files](#hint-files)
  - [Lock Files](#lock-files)
- [Limitations](#limitations)
- [License](#license)

## Example
<commit_msg>Adding Travis CI badge to README.<commit_after># medea

A persistent key-value storage library.

* Can be embedded in Node.js applications.
* Support for `get`, `put`, and `remove` operations.
* Influenced by Basho's [Bitcask](https://github.com/basho/bitcask) key-value store.
* Values can be any string or `Buffer`.

[![Build Status](https://api.travis-ci.org/argo/medea.png)](https://api.travis-ci.org/argo/medea.png)

## Contents

- [Example](#example)
- [Install](#install)
- [Usage](#usage)
  - [medea.open([directory], callback)](#medeaopendirectory-callback)
  - [medea.get(key, callback)](#medeagetkey-callback)
  - [medea.put(key, value, callback)](#medeaputkey-value-callback)
  - [medea.remove(key, callback)](#medearemovekey-callback)
  - [medea.sync(callback)](#medeasynccallback)
  - [medea.close(callback)](#medeaclosecallback)
  - [medea.listKeys(callback)](#medealistkeyscallback)
  - [medea.mapReduce(options, callback)](#medeamapreduceoptions-callback)
- [How It Works](#how-it-works)
  - [Keydir](#keydir)
  - [Data Files](#data-files)
  - [Hint Files](#hint-files)
  - [Lock Files](#lock-files)
- [Limitations](#limitations)
- [License](#license)

## Example

{'fraction_non_alphanumeric': 0.18401071907101385, 'fraction_numerical': 0.0, 'mean_word_length': 5.222222222222222, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3032370', 'n_tokens_mistral': 847, 'n_tokens_neox': 771, 'n_words': 135}