Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sleekdb/sleekdb
Pure PHP NoSQL database with no dependency. Flat file, JSON based document database.
https://github.com/sleekdb/sleekdb
api database filestorage flat-file json nosql nosql-database nosql-databases php php7 schema storage storage-engine
Last synced: about 1 month ago
JSON representation
Pure PHP NoSQL database with no dependency. Flat file, JSON based document database.
- Host: GitHub
- URL: https://github.com/sleekdb/sleekdb
- Owner: SleekDB
- License: mit
- Created: 2018-04-13T17:50:14.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-03-03T20:25:04.000Z (8 months ago)
- Last Synced: 2024-08-26T21:11:31.500Z (3 months ago)
- Topics: api, database, filestorage, flat-file, json, nosql, nosql-database, nosql-databases, php, php7, schema, storage, storage-engine
- Language: PHP
- Homepage: https://sleekdb.github.io
- Size: 522 KB
- Stars: 895
- Watchers: 38
- Forks: 81
- Open Issues: 31
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
Please give it a Star if you like the project 🎉 ❤️
# SleekDB - A NoSQL Database made using PHP
## 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.
## Features
- ⚡ **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!
```php
where( 'post.author.role', '=', 'admin' )
```SleekDB will look for data at:
```php
{
"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!