Skip to content

aurkaxi/AshenDB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

https://raw.githubusercontent.com/aurkaxi/AshenDB/master/docs/source/AshenDB_Logo.png

Documentation Status

AshenDB

AshenDB is a another stupid library for using json as Database. It mimics MongoDB functionalities.

Why AshenDB?

  • MongoDB : Needs a server to run. You can clone your MongoDB to AshenDB. AshenDB is highly inspired from MongoDB, it uses MongoDB like syntax, which makes it easy to use for beginners as well as for MongoDB users.
  • TinyDB : Too simple. Query and Update Operators such as $set, $inc are not supported. Check all the supported Operators in AshenDB. Also it is not thread safe.
  • JsonDB : It is not thread safe. Neither it supports mongodb like syntax.

Why not AshenDB?

It is immature. It doesn't use separate server but uses json as a database. Which may be good for small or medium projects but for large and scalable projects it is recommended to use MongoDB with Redis as a cache.

Installation

It is available on PyPI. You can install it using pip.

pip install ashendb

Usage

>>> from ashendb import AshenDB
# Assuming you are inside a async function
>>> db = await AshenDB.get_db('test')
>>> db
<AshenDB: test>
>>> coll = await db.get_coll('users')
>>> coll
<Collection: users>
>>> doc = await coll.get_doc('user1')
>>> doc
<Document: user1>
>>> print(doc)
{'_id': 'user1'}

Documentation

Documentation is available at Read the Docs.

Contributing

  • Open an issue.
  • Fork the repository -> New Branch -> Make Changes -> Open a Pull Request.

Releases

No releases published

Languages