Metadata-Version: 1.1
Name: merkava
Version: 0.2.0
Summary: A fast ordered NoSQL database.
Home-page: https://github.com/ahopkins/merkava
Author: Adam Hopkins
Author-email: admhpkns@gmail.com
License: MIT
Description-Content-Type: UNKNOWN
Description: =============================
        MerkavaDB
        =============================
        
        .. image:: https://badge.fury.io/py/merkava.png
            :target: http://badge.fury.io/py/merkava
        
        .. image:: https://travis-ci.org/ahopkins/merkava.png?branch=master
            :target: https://travis-ci.org/ahopkins/merkava
        
        A fast ordered NoSQL database. `Documentation <http://merkava.readthedocs.io/en/latest/>`_
        
        .. note::
            This is still in **active** development. Things will change. If you are interested in helping out, or would like to see any particular features added, let me know.
        
        .. image:: https://raw.githubusercontent.com/ahopkins/merkava/master/assets/logo.png
        
        What is MerkavaDB?
        ------------------
        
        A very fast, and lightweight DB for storing ordered data. The order it comes out is the order that it went in. The API is meant to be small and without bloated queries. Consequently, there is a limited set of queries to be made since the primary tool is getting objects in and out of storage in a specific order.
        
        So, why would I use it?
        -----------------------
        
        Because it is fast. And it is simple.
        
        Let's say, for example, you are building an application. As a part of your application, you want to have a chat or a news feed. The data will ALWAYS be displayed in the same order. Well, you can persist your data objects and feel condifent that they will always be in the same order, no matter what.
        
        MerkavaDB stores data in a similar format to JSON. So, it is schemaless and will allow you to store data in whatever format you need.
        
        How do I use it?
        ----------------
        
        By making HTTP calls to the database server. All you need to do is specify a "channel" and some data.
        
        What kind of data?
        ++++++++++++++++++
        
        - nulls
        - booleans
        - integers
        - floats
        - strings
        - arrays/lists
        - maps/dicts
        
        Basically anything you would pass by JSON.
        
        What is a channel?
        ++++++++++++++++++
        
        A channel is a division of data. All data is stored in a sequential order given the channel that it is in. For example, it could be a single chat room or news feed.
        
        Supported Operations
        --------------------
        
        - ``HTTP POST /<channel>/`` - create
        - ``HTTP GET /<channel>/<id>/`` - retrieve a single record
        - ``HTTP PATCH /<channel>/<id>/`` - update a record
        - ``HTTP DELETE /<channel>/<id>/`` - delete a record
        - ``HTTP PUT /<channel>/<id>/`` - restore a deleted record
        - ``HTTP GET /<channel>/recent/<X>`` - retrieve an array of the X most recent records
        
        Roadmap
        -------
        
        - Drivers for: Python, NodeJS, Java
        - Test coverage
        - Documentation
        - Clean up utilities
        - User interface
        - Debian installer
        - Single script installer
        - Configuration options
        - Examples
        
        Current Version
        ---------------
        version 0.2.0
        
        
        
        Documentation
        -------------
        
        The full documentation is at http://merkava.rtfd.org.
        
        
        
        History
        -------
        
        0.1.0 (2017-09-24)
        ++++++++++++++++++
        
        * First release on PyPI.
        
Keywords: merkava
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
