Skip to content

Commit

Permalink
Update for abstract-level
Browse files Browse the repository at this point in the history
Moves many modules (but not yet all) to the Legacy section and adds
new `abstract-level` based modules.

Also adds a `timeless` option for modules, to make the "last commit"
badge green, to indicate that the module is feature-complete and can
be used even if it seems old by lack of activity.
  • Loading branch information
vweevers committed Dec 1, 2024
1 parent c09f9e2 commit 6426dc1
Show file tree
Hide file tree
Showing 22 changed files with 1,819 additions and 1,622 deletions.
2,025 changes: 1,059 additions & 966 deletions README.md

Large diffs are not rendered by default.

46 changes: 0 additions & 46 deletions modules/bundles.json

This file was deleted.

30 changes: 4 additions & 26 deletions modules/core.json
Original file line number Diff line number Diff line change
@@ -1,32 +1,10 @@
{
"title": "Core",
"modules": {
"levelup": {
"github": "Level/levelup",
"description": [
"The glue that holds everything together.",
"Use this when you need a [custom or swappable store](#stores)."
],
"copyrightYear": 2012,
"author": null
},
"abstract-leveldown": {
"github": "Level/abstract-leveldown",
"description": [
"An abstract prototype matching the [leveldown] API.",
"Use this to implement your own store."
],
"copyrightYear": 2013,
"author": "Rod Vagg"
},
"level-packager": {
"github": "Level/packager",
"description": [
"Package helper to export [a bundle](#bundles).",
"Use this to create a new `level-*` bundle."
],
"copyrightYear": 2013,
"author": null
"abstract-level": {
"github": "Level/abstract-level",
"description": "Abstract class for a lexicographically sorted key-value database.",
"timeless": true
}
}
}
101 changes: 0 additions & 101 deletions modules/databases.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,30 +12,6 @@
"url": "http://pouchdb.com/",
"description": "PouchDB allows you to store and query data offline and then sync with CouchDB when online. For Node, browser and mobile."
},
"couchup": {
"github": "mikeal/couchup",
"description": [
"A CouchDB implementation on top of [levelup]."
]
},
"firedup": {
"github": "eugeneware/firedup",
"description": [
"A node.js implementation of firebase based on [levelup]."
]
},
"len": {
"github": "binocarlos/len",
"description": [
"Len is a resource booking database using LevelDB for storage. Useful for calendar and gantt chart apps and for questions like 'can a customer book this resource starting X and ending Y'."
]
},
"lem": {
"github": "binocarlos/lem",
"description": [
"Lem is a telemetry storage database using LevelDB. Keys are indexed by timestamp and you can read values in-between 2 points in time."
]
},
"levelgraph": {
"github": "mcollina/node-levelgraph",
"description": [
Expand All @@ -54,88 +30,11 @@
"Event-driven database based on [pouchdb]. Optimized for reactive programming with observables. Events and state is automatically shared between multiple browser tabs. Queries are defined by the mongoDB mango-standard."
]
},
"pushdb": {
"github": "mikeal/pushdb",
"description": [
"A programmable database with document storage and unique indexing capabilities."
]
},
"search-index": {
"github": "fergiemcdowall/search-index",
"description": [
"A persistent full text search engine for browser and Node.js."
]
},
"tacodb": {
"github": "dominictarr/tacodb",
"description": [
"A responsive, Node.js-style database ideal for realtime data. Highly modular and adaptable, allowing extension with the [Level][level-org] ecosystem."
]
},
"timestreamdb": {
"github": "brycebaril/timestreamdb",
"description": [
"A full-featured timeseries database on top of LevelDB. Includes a library for streaming statistical operations on timeseries data including joins, aggregates, filters, and map-like operations."
]
},
"@nano-sql/core": {
"github": "ClickSimply/Nano-SQL",
"description": [
"A small (10Kb) RDBMS abstraction on top of [levelup] that also runs in the browser with undo/redo support, immutable objects and IndexedDB persistence."
]
},
"vertical": {
"github": "zy445566/vertical",
"description": [
"LevelDB distributed, Server and Client!"
]
},
"flash-store": {
"github": "zixia/flash-store",
"description": [
"FlashStore is a Key-Value persistent storage with easy to use ES6 Map-like API(both Async and Sync support), powered by LevelDB and TypeScript."
]
},
"level-fact-base": {
"github": "smallhelm/level-fact-base",
"description": [
"Store immutable facts and query them with datalog."
]
},
"dulcimer": {
"github": "fritzy/dulcimer",
"description": "Define JSON models and manage indexes, children, foreign keys and much more."
},
"levi": {
"github": "cshum/levi",
"description": "Stream based full-text search for Node.js and browser using [levelup]."
},
"level-mongo": {
"github": "simon-p-r/level-mongo",
"description": "MongoDB-like database backed by LevelDB."
},
"level-orm": {
"github": "eugeneware/level-orm",
"description": "Simple ORM built on [levelup]."
},
"level-lively": {
"github": "eugeneware/level-lively",
"description": "[levelup] implementation of [LivelyDb](https://github.com/eugeneware/livelydb) for doing real-time data binding of a database with local javascript objects."
},
"kwdb": {
"github": "KsRyY/kwdb",
"description": "REST wrapper for [levelup]."
},
"level-restful": {
"github": "karissa/level-restful",
"description": "REST wrapper for [levelup], as an extension to [level-orm]."
},
"level-rest": {
"github": "shama/level-rest",
"description": [
"REST wrapper for [levelup].",
"NB. Not compatible with latest [levelup]."
]
}
}
}
9 changes: 9 additions & 0 deletions modules/encodings.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
// Example of a custom encoding
const { Level } = require('level')
const charwise = require('charwise')

const db = new Level('./db', {
keyEncoding: charwise
})

await db.put(['users', 2], 'example')
17 changes: 10 additions & 7 deletions modules/encodings.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,16 @@
{
"title": "Encodings",
"description": "Custom [level-codec] compatible encodings for use with [encoding-down].",
"example": "encodings.js",
"modules": {
"protocol-buffers": {
"github": "mafintosh/protocol-buffers",
"description": "[Protocol Buffers](https://developers.google.com/protocol-buffers/) for Node.js. Compiled messages are valid as encodings.",
"timeless": true
},
"charwise": {
"github": "dominictarr/charwise",
"description": "Encode/decode with same encoded sort order as [bytewise]."
"description": "Encode / decode with same encoded sort order as [bytewise].",
"timeless": true
},
"bytewise": {
"github": "deanlandolt/bytewise",
Expand All @@ -14,13 +20,10 @@
"NB. Use [charwise] if possible. Gives you almost everything `bytewise` does but much faster."
]
},
"protocol-buffers": {
"github": "mafintosh/protocol-buffers",
"description": "[Protocol Buffers](https://developers.google.com/protocol-buffers/) for Node.js. Compiled messages are [level-codec] compatible encodings."
},
"lexicographic-integer-encoding": {
"github": "vweevers/lexicographic-integer-encoding",
"description": "Wraps [`lexicographic-integer`](https://github.com/substack/lexicographic-integer)."
"description": "Wraps [`lexicographic-integer`](https://github.com/substack/lexicographic-integer).",
"timeless": true
}
}
}
26 changes: 0 additions & 26 deletions modules/hooks.json

This file was deleted.

37 changes: 0 additions & 37 deletions modules/iterators.json

This file was deleted.

34 changes: 0 additions & 34 deletions modules/layers.json

This file was deleted.

Loading

0 comments on commit 6426dc1

Please sign in to comment.