Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/heineiuo/rippledb
Embeddable key-value database engine in pure TypeScript, based on LSM-Tree
https://github.com/heineiuo/rippledb
database database-engine deno javascript key-value-store leveldb lsm lsm-tree nodejs pure-javascript pure-typescript rippledb rocksdb storage-engine typescript
Last synced: 2 months ago
JSON representation
Embeddable key-value database engine in pure TypeScript, based on LSM-Tree
- Host: GitHub
- URL: https://github.com/heineiuo/rippledb
- Owner: heineiuo
- License: mit
- Created: 2017-11-27T13:25:06.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-02-28T01:00:40.000Z (almost 2 years ago)
- Last Synced: 2024-11-09T01:35:43.563Z (2 months ago)
- Topics: database, database-engine, deno, javascript, key-value-store, leveldb, lsm, lsm-tree, nodejs, pure-javascript, pure-typescript, rippledb, rocksdb, storage-engine, typescript
- Language: TypeScript
- Homepage: https://rippledb.github.io
- Size: 2.5 MB
- Stars: 40
- Watchers: 2
- Forks: 3
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# [Rippledb](https://rippledb.github.io/) ·
Rippledb is an embeddable key-value database engine in pure TypeScript, based on LSM-Tree, Inspired by LevelDB.
* **Pure TypeScript:** Rippledb is totally written in TypeScript, and runs on different
platforms after being compiled to JavaScript.
* **Lightweight:** Rippledb has only 7k+ source code, and smaller than 1MB after compiled.Rippledb use zero third party modules.
* **Embeddable:** Rippledb can be embedded in node.js application (or other JavaScript Runtime Environments) very easily.## Installation
Install with npm:
```
npm install rippledb
```Install with Yarn:
```
yarn add rippledb
```## Documentation
You can find the React documentation on the [website](https://rippledb.github.io).
Check out the [Get Started](https://rippledb.github.io/docs/) page for a quick overview.
## Examples
```ts
import path from 'path'
import { Database } from 'rippledb'async function main(){
const db = new Database(path.resolve(__dirname, './db'))
await db.put('foo', 'bar')
console.log(
new TextDecoder().decode(await db.get('foo'))
) // 'bar'
}main()
```## Roadmap
- [x] Release 1.0 (2020-7-7)
- [ ] Support [Deno](https://deno.land) (2020-9-1)## Benchmark
```log
environment : GitHub Action
key : 16 bytes
value : 100 bytes
total : 10000
runners : 10
fillrandom : 823.87 ms total; 82.39 us/op
```## Compatibility
|node.js|Deno|
|-|-|
|`>=v10.0.0`|WIP|## License
[MIT License](./LICENSE)