Full documentation: https://sleekdb.github.io/
SleekDB is a simple flat file NoSQL like database implemented in PHP without any third-party dependencies that store data in plain JSON files.
It is not designed to handle heavy-load IO operations, it is designed to have a simple solution where all we need a database for managing a few gigabytes of data. You can think of it as a database for low to medium operation loads.
-
⚡ Lightweight, faster
Stores data in plain-text utilizing JSON format, no binary conversion needed to store or fetch the data. Default query cache layer.
-
🔆 Schema free data storage
SleekDB does not require any schema, so you can insert any types of data you want.
-
🔍 Query on nested properties
It supports schema free data, so you can filter and use conditions on nested properties of the JSON documents!
where( 'post.author.role', '=', 'admin' )
SleekDB will look for data at:
{ "post": { "author": { "role": "admin" } } }
-
✨ Dependency free, only needs PHP to run
Supports PHP 7+. Requires no third-party plugins or software.
-
🚀 Default caching layer
SleekDB will serve data from cache by default and regenerate cache automatically! Query results will be cached and later reused from a single file instead of traversing all the available files.
-
🌈 Rich Conditions and Filters
Use multiple conditional comparisons, text search, sorting on multiple properties and nested properties. Some useful methods are:
- where
- orWhere
- select
- except
- in
- not in
- join
- like
- sort
- skip
- orderBy
- update
- limit
- search
- distinct
- exists
- first
- delete
- like
- not lik
- between
- not between
- group by
- having
-
👍 Process data on demand
SleekDB does not require any background process or network protocol in order to process data when you use it in a PHP project. All data for a query will be fetched at runtime within the same PHP process.
-
😍 Runs everywhere
Runs perfectly on shared-servers or VPS too.
-
🍰 Easy to learn and implement
SleekDB provides a very simple elegant API to handle all of your data.
-
🍰 Easily import/export or backup data
SleekDB use files to store information. That makes tasks like backup, import and export very easy.
-
💪 Actively maintained
SleekDB is created by @rakibtg who is using it in various types of applications which are in production right now. Our other contributor and active maintainer is Timucin who is making SleekDB much better in terms of code quality and new features.
-
📔 Well documented
The official documentation of SleekDB does not just provide a good api documentation. It is filled with examples!