-
Notifications
You must be signed in to change notification settings - Fork 27
Feature set for Alpha MVP #2
Copy link
Copy link
Open
Description
Features:
- Modular (Build your own DB)
- Pre-built (Use our pre-built code with configuration) -
server.js - Exposed Query to HTTP, Websockets
Modularity:
- Config files
- Schema
- Default communication adapters (Websocket, HTTP)
- ACL
- Built-In and Custom indexing algorithms (linked lists, time based, geospatial, History, etc)
- Storage
Conceptual:
- Linked lists use the
prevandnextiterators via an Index and exposenode.prev()andnode.next()API - History index offers version control, revisions, and rollback support
Details:
JoyDB is a modular first database, this means users have the ability to roll their own database like Legos. The default server.js is for non-devs who want out of the box functionality, custom configuration, and potentially an IDE. Other modular parts include exposing the Query module to communication adapters (like HTTP server, Websockets, etc).
Gossip:
- Mesh module should allow for data splitting between super peers for enterprise federated setups. To provide authentication between these peers, we use the ACL module with whitelist.
- Storage has a
shouldSaveplaceholder which can be over-ridden for more fine-grained control over which data to save based on factors. - Storage is a higher-order component which exposes APIs for other modules that use it. (like
shouldSave)
TODO:
- Flatten object and detect circular references, creating links between node data
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels