Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/leoafarias/neardb
Simple document db made for infinitely scalable globally distributed reads.
https://github.com/leoafarias/neardb
cache database edge edge-computing iot json-database lambda react-native s3 serverless
Last synced: 23 days ago
JSON representation
Simple document db made for infinitely scalable globally distributed reads.
- Host: GitHub
- URL: https://github.com/leoafarias/neardb
- Owner: leoafarias
- License: mit
- Created: 2018-10-23T20:47:25.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-02-29T15:17:31.000Z (10 months ago)
- Last Synced: 2024-10-20T10:51:24.915Z (3 months ago)
- Topics: cache, database, edge, edge-computing, iot, json-database, lambda, react-native, s3, serverless
- Language: TypeScript
- Homepage: http://neardb.org
- Size: 2.17 MB
- Stars: 100
- Watchers: 6
- Forks: 9
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
NearDB is a simple database that leverages cloud infrastructure like document storage and CDN to deliver an inexpensive unbelievably scalable document database optimized for reads and perfect for edge applications.
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/9edcdbf53d47468e9917676d80277188)](https://www.codacy.com/app/leo/neardb?utm_source=github.com&utm_medium=referral&utm_content=leoafarias/neardb&utm_campaign=Badge_Grade) [![Build Status](https://travis-ci.org/leoafarias/neardb.svg?branch=master)](https://travis-ci.org/leoafarias/neardb) [![Coverage Status](https://coveralls.io/repos/github/leoafarias/neardb/badge.svg?branch=master)](https://coveralls.io/github/leoafarias/neardb?branch=master)
## Motivation
While working on building edge applications for higher performance and lower latency there is a need store persistent data also on edge.
Distributed database solutions but they are very involved and costly while having a lower global footprint than a CDN.
Leverage ubiquitous and mature infrastructure like cloud storage and CDNs to deliver a persistent, performance, and inexpensive db solution from the edge.
### Use with Edge Apps/Functions
- [Zeit Now](https://zeit.co/now) - Global Serverless Deployments
- [Cloudflare Workers](https://www.cloudflare.com/products/cloudflare-workers/) - Serverless applications on Cloudflare's global network
- [Lambda@Edge](https://aws.amazon.com/lambda/edge/) - Run Lambda functions on CloudFront
- [Fly.io](https://fly.io) - Javascript at the edge#### Works with the following for database storage
- AWS S3
- [Google Cloud Storage](https://www.notion.so/Google-Cloud-Storage-02b21bb5b9e643c39f6845b873f19ef4)
- [Digital Ocean Spaces](https://www.notion.so/Digital-Ocean-Spaces-64de88aa20e24af3b48d40b611ebf102)
- Minio
- any S3 API compatible storage service#### Client-side compatibility
Keep in mind while using this for client-side that ACL is done on the bucket/CDN level. It was designed for edge server use so client implementation can be a bit tricky. Open an issue with your specific case, I would love to hear how you plan on using it.
- Browser
- React Native#### Who is this for
This is perfect for persistent data that is read frequently and needs to be avaialble on the edge application to deliver dynamic data while keeping the costs low. Some examples of the best uses are:
- Key-value
- Configuration
- Cached data#### Probably not for you if
- You plan on using this as your primary database for an app that has complex data needs.
- You need transactions. (I have some ideas on how to accomplish this, but its currently not implemented.)
- Do many writes/sec in the same document. Reads are incredibly efficient, fast and inexpensive; however, writes are always at the origin.### Documentation & Guides
See [NearDB.org](https://www.notion.so/NearDB-0d5c6e1b4b344c9cbb77c1ffa08a96ed)
### TypeDoc
See the [documentation generated from TypeDoc](https://leoafarias.github.io/neardb/).
## Contributing
Please read [CONTRIBUTING.md](https://gist.github.com/PurpleBooth/b24679402957c63ec426) for details on our code of conduct, and the process for submitting pull requests to us.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details