This seems like an impressive amount of work and an interesting way to combine RBAC + [realtime] Sync/Conflict Resolution + [local] Document Storage/Querying (and I'm personally interested in the geo module and am intrigued by the AI module to help with some async data pipelines); however, I'm having trouble seeing how this is graph database? Maybe I'm misunderstanding, but I don't see ways for traversing the graph.
I understand that you can create and store a node and then link that node to another node, but how could I query for nodes based on that link/relationship?
I see that an `edges` property is added on result nodes from one of the examples[1] and I'm not familiar with Mongo-style queries[2] to know if there's a better operator, but the query above is meant to find nodes that have connected/edge nodes that have an age greater than 30 (e.g., Bob).
(Also, I'm not sure what it'd look like to check against direct AND indirect edges? e.g., Bob and Dwight)
Anyways, my question/point is, is there support (or plans to support) querying and traverse a directed graph?
Exactly, it is clearly explained in the following link to the AI module. It shows you an example of how to make queries with natural language, of the type {
"prompt": "Get post id 5"
}, the link to the experimental module is https://estebanrfp.github.io/gdb/examples/AIQuery.html
catoAppreciator · 13h ago
Looks very promising. Do you have a vision for how we should build p2p apps more generally? I have recently found the holepunch libraries / pear runtime and am curious if you have any thoughts on those projects or how hypercore(?) compares to genosDB.
estebanrfp · 4h ago
I'll send you the complete documentation, it's super easy to create applications with artificial intelligence, simply by pasting the official documentation to any assistant and asking it to build it for you and, as if by magic, you'll have it working thanks to the fact that GenosDB is loaded integrated from the CDN. https://github.com/estebanrfp/gdb/wiki/GDB-API-Reference And here's a post from the author on how to build a distributed todolist app in real time.https://genosdb.com/build-a-to-do-list-in-minutes-with-genos...
splintercell · 13h ago
How does it relate to in comparison to gunDB?
r14c · 12h ago
I haven't heard about gun in a long time. Did they ever figure out their conflict resolution algorithm? I recall their hypothetical amnesia machine or whatever didn't have well defined behavior.
estebanrfp · 4h ago
They couldn't agree on how to solve many of the synchronization problems, GenosDB uses the Nostr network, out of the box, you don't need to add signaling servers, all the examples just work
I understand that you can create and store a node and then link that node to another node, but how could I query for nodes based on that link/relationship?
E.g.,
```
```I see that an `edges` property is added on result nodes from one of the examples[1] and I'm not familiar with Mongo-style queries[2] to know if there's a better operator, but the query above is meant to find nodes that have connected/edge nodes that have an age greater than 30 (e.g., Bob).
(Also, I'm not sure what it'd look like to check against direct AND indirect edges? e.g., Bob and Dwight)
Anyways, my question/point is, is there support (or plans to support) querying and traverse a directed graph?
[1] https://github.com/estebanrfp/gdb/wiki/.map()#b-query-langua... [2] https://estebanrfp.github.io/gdb/examples/testlinks.html