| Path: | README.md |
| Last Update: | Sat Feb 23 07:11:47 +0000 2019 |
# Moneta: A unified interface for key/value stores
[](http://rubygems.org/gems/moneta) [](http://travis-ci.org/minad/moneta) [](https://gemnasium.com/minad/moneta) [](https://codeclimate.com/github/minad/moneta)
Moneta provides a standard interface for interacting with various kinds of key/value stores. Moneta supports the well-known NoSQL and document based stores.
A short overview of the features:
* Configurable serialization via `Moneta::Transformer` proxy (Marshal/JSON/YAML and many more) * Configurable value compression via `Moneta::Transformer` proxy (Zlib, Snappy, LZMA, ...) * Configurable key transformation via `Moneta::Transformer` proxy
* Atomic incrementation and decrementation for most stores (Method `#increment` and `#decrement`) * Atomic creation of entries (Method `#create`) * Shared/distributed database-wide synchronization primitives `Moneta::Mutex` and `Moneta::Semaphore`
If you are not yet convinced, you might ask why? What are the goals of the project?
same for template languages.
Moneta is tested thoroughly using [Travis-CI](travis-ci.org/minad/moneta).