<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[GenosDB]]></title><description><![CDATA[GenosDB (GDB) — A distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model. Real-time sync, OPFS storage, Cellular Mesh networki]]></description><link>https://genosdb.com</link><generator>RSS for Node</generator><lastBuildDate>Fri, 10 Apr 2026 20:48:42 GMT</lastBuildDate><atom:link href="https://genosdb.com/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Introducing GenosDB: a P2P Graph Database with Built-In Zero-Trust Security]]></title><description><![CDATA[TL;DR: GenosDB is a peer-to-peer graph database with zero-trust security at the core. Real-time sync, cryptographic identity, and role-based access — no central server. Repo
https://www.youtube.com/watch?v=QsoBf2ghyw4

What Is GenosDB?
GenosDB (GDB) ...]]></description><link>https://genosdb.com/introducing-genosdb-p2p-security</link><guid isPermaLink="true">https://genosdb.com/introducing-genosdb-p2p-security</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 16:08:18 GMT</pubDate><enclosure url="https://i.imgur.com/sA8Qzvz.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>TL;DR:</strong> GenosDB is a peer-to-peer graph database with zero-trust security at the core. Real-time sync, cryptographic identity, and role-based access — no central server. <a target="_blank" href="https://github.com/estebanrfp/gdb">Repo</a></p>
<div class="embed-wrapper"><div class="embed-loading"><div class="loadingRow"></div><div class="loadingRow"></div></div><a class="embed-card" href="https://www.youtube.com/watch?v=QsoBf2ghyw4">https://www.youtube.com/watch?v=QsoBf2ghyw4</a></div>
<hr />
<h2 id="heading-what-is-genosdb">What Is GenosDB?</h2>
<p>GenosDB (GDB) is a modular, peer-to-peer graph database designed to embed zero-trust security <em>directly in the data layer</em>.  </p>
<p>Instead of bolting on identity or permissions through a central server, every peer independently enforces trust with cryptography.  </p>
<hr />
<h2 id="heading-the-solution">The Solution</h2>
<p>Most “decentralized” apps cheat: they use P2P storage, but rely on centralized servers for identity and access control. That single point of trust undermines decentralization.  </p>
<p>GenosDB flips this:  </p>
<ul>
<li>Every operation is signed and verified.  </li>
<li>Roles and permissions live <em>inside the database</em>.  </li>
<li>Peers enforce rules locally, not through a server.  </li>
</ul>
<hr />
<h2 id="heading-core-architecture">Core Architecture</h2>
<ul>
<li><strong>Graph-based</strong>: data as nodes and edges.  </li>
<li><strong>P2P sync</strong>: WebRTC or relay-based updates.  </li>
<li><strong>Reactive queries</strong>: subscribe to graph changes in real time.  </li>
<li><strong>Eventual consistency</strong>: async propagation, but cryptographically validated.  </li>
</ul>
<hr />
<h2 id="heading-security-manager">Security Manager</h2>
<p>Security isn’t an add-on — it’s the core engine.  </p>
<ul>
<li><strong>Identity:</strong> every user = Ethereum address (private key secured via WebAuthn or mnemonic).  </li>
<li><strong>Signed ops:</strong> all operations signed + verified.  </li>
<li><strong>RBAC:</strong> roles (guest → superadmin) define permissions, stored in the graph.  </li>
<li><strong>ACLs:</strong> per-node control for fine-grained access.  </li>
<li><strong>Encrypted storage:</strong> data tied to user identity keys.  </li>
</ul>
<hr />
<h2 id="heading-zero-trust-entry">Zero-Trust Entry</h2>
<p>New peers get one privilege: create their identity node as <em>guest</em>.<br />No shortcuts. No backdoors. Promotion requires a superadmin.  </p>
<hr />
<h2 id="heading-distributed-trust-model">Distributed Trust Model</h2>
<ol>
<li><strong>Cryptographic signatures</strong> — no impersonation.  </li>
<li><strong>Shared rules</strong> — uniform, verifiable.  </li>
<li><strong>Local enforcement</strong> — compromised peers can’t cheat the network.  </li>
</ol>
<p>Security is prioritized over availability: no operation is accepted without verifiable proof.  </p>
<hr />
<h2 id="heading-why-it-matters">Why It Matters</h2>
<p>GenosDB shows that:  </p>
<ul>
<li>Identity and trust can live <em>inside</em> a database.  </li>
<li>P2P apps can be zero-trust without servers.  </li>
<li>Collaborative systems (docs, social, multiplayer) can run on a substrate where every action is verified cryptographically.  </li>
</ul>
<hr />
<h2 id="heading-resources">Resources</h2>
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong><br />GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.  </p>
</blockquote>
<p><strong>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a></strong> | Full reference guide and API overview</p>
<p><strong>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a></strong> | Explore production builds</p>
<p><strong>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a></strong> | Quick setup instructions</p>
<p><strong>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a></strong> | <strong><a target="_blank" href="https://github.com/estebanrfp">GitHub</a></strong> | <strong><a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></strong></p>
<hr />
<h2 id="heading-invitation">Invitation</h2>
<p>GenosDB is in <strong>stable beta</strong>: the core engine runs, zero-trust flows are enforced, and P2P sync is live.  </p>
<p>Looking for developers to:  </p>
<ul>
<li>Experiment with it  </li>
<li>Stress test it  </li>
<li>Help shape the roadmap  </li>
</ul>
<p>If you care about <strong>security, decentralization, and real-time collaboration</strong>, I’d love your feedback.  </p>
<p>— Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)  </p>
<h2 id="heading-explore-more">Explore More</h2>
<ul>
<li><a target="_blank" href="https://genosdb.com/building-genosdb-p2p-database">Why I Built GenosDB</a> — the complete technical deep-dive</li>
<li><a target="_blank" href="https://genosdb.com/genosdb-distributed-trust-p2p-security">GenosDB: Zero-Trust Security for Distributed Systems</a> — how the security model works</li>
<li><a target="_blank" href="https://genosdb.com/genosdb-technical-features">Technical Features of GenosDB</a> — complete feature overview</li>
</ul>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[The Future of the Web: Towards a Decentralized Internet and Distributed Data Storage]]></title><description><![CDATA[The web is shifting from centralized platforms to distributed architectures. Concepts like the Decentralized Web, peer-to-peer networks, and distributed databases are redefining how data is stored, shared, and owned. From its early centralized beginn...]]></description><link>https://genosdb.com/decentralized-web-distributed-storage</link><guid isPermaLink="true">https://genosdb.com/decentralized-web-distributed-storage</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 16:08:15 GMT</pubDate><enclosure url="https://i.imgur.com/2r1O1t5.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The web is shifting from centralized platforms to distributed architectures. Concepts like the Decentralized Web, peer-to-peer networks, and distributed databases are redefining how data is stored, shared, and owned. From its early centralized beginnings to the latest decentralization-driven models, we are witnessing a fundamental shift in how we interact with information and how it is stored, shared, and distributed. Concepts such as the <strong>Decentralized Web (Web3)</strong>, <strong>peer-to-peer (P2P)</strong> networks, protocols like <strong>Nostr</strong>, and advanced storage technologies like <strong>GenosDB</strong> are redefining the future of the web and data storage.</p>
<hr />
<h2 id="heading-the-decentralized-web">The Decentralized Web</h2>
<p>The Decentralized Web, or Web3, represents a new generation of the internet where data is not controlled by large corporations nor stored in centralized servers. Instead, it leverages blockchain technologies, P2P networks, and distributed systems to ensure users have greater control over their data and privacy. This model removes intermediaries, promotes transparency, and reduces the risk of censorship or manipulation.  </p>
<p>Rather than depending on tech giants to host and manage our data, the Decentralized Web empowers each user to own their information and actively participate in the network.</p>
<hr />
<h2 id="heading-peer-to-peer-p2p-networks-the-backbone-of-decentralization">Peer-to-Peer (P2P) Networks: The Backbone of Decentralization</h2>
<p>P2P networks are fundamental to the Decentralized Web. Instead of relying on a central server, nodes (devices connected to the network) act as equals, sharing resources directly with each other. This not only improves efficiency but also increases resilience against failures or attacks.  </p>
<p>A clear example is <strong>IPFS (InterPlanetary File System)</strong>, a P2P network that enables distributed file storage and access. Each file has a unique content-based identifier, ensuring immutability and accessibility from multiple points across the network.</p>
<hr />
<h2 id="heading-nostr-a-minimalist-protocol-for-decentralized-communication">Nostr: A Minimalist Protocol for Decentralized Communication</h2>
<p>One of the most exciting developments in the decentralized space is <strong>Nostr</strong>, a simple yet powerful protocol designed for secure, intermediary-free communication. Nostr enables the creation of social networks, instant messaging, and microblogging platforms that are fully decentralized.  </p>
<p>What makes Nostr special is its simplicity: it doesn’t require blockchain or complex consensus mechanisms. Instead, it uses cryptographic keys to authenticate messages and P2P networks to distribute them. This makes it an ideal tool for building censorship-resistant and scalable applications.</p>
<hr />
<h2 id="heading-genosdb-organizing-data-in-the-decentralized-era">GenosDB: Organizing Data in the Decentralized Era</h2>
<p>As the volume of distributed data grows exponentially, the need to organize it efficiently becomes critical. This is where <strong>GenosDB</strong> comes in—a graph-based database technology that represents relationships between entities.  </p>
<p>In a decentralized world, GenosDB can be a key player in connecting scattered fragments of data across different nodes. For example, in a decentralized social network, GenosDB could map relationships between users, posts, and comments, enabling fast and accurate queries without compromising privacy.  </p>
<p>Graph databases are also particularly well-suited for applications requiring complex relationship analysis, such as personalized recommendations, scientific research, and social network analysis.</p>
<hr />
<h2 id="heading-the-future-a-decentralized-and-resilient-web">The Future: A Decentralized and Resilient Web</h2>
<p>The future of the web is clearly leaning toward decentralization. As more people become aware of the risks tied to centralized models—loss of privacy, censorship, single points of failure—solutions like the Decentralized Web, P2P networks, Nostr, and GenosDB gain traction.  </p>
<p>Imagine an internet where:  </p>
<ul>
<li><strong>Your data belongs to you</strong>: No one can access it without your consent.  </li>
<li><strong>There are no intermediaries</strong>: Interactions happen directly between users, eliminating unnecessary costs.  </li>
<li><strong>Everything is resilient</strong>: Even if parts of the network fail, the system keeps running thanks to its distributed nature.  </li>
<li><strong>Innovation is open</strong>: Anyone can contribute to building new applications without restrictions imposed by corporations.  </li>
</ul>
<p>This future is not as far as it seems. Projects and communities are already working hard to make it real. Still, challenges remain in terms of mass adoption, usability, and education.</p>
<p>{% youtube Lkw4hQpgt50 %}</p>
<h2 id="heading-conclusion">Conclusion</h2>
<p>For more technical details, check out the 📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">GenosDB Documentation</a>.</p>
<hr />
<h2 id="heading-conclusion-1">Conclusion</h2>
<p>The convergence of technologies like the Decentralized Web, P2P networks, Nostr, and GenosDB is paving the way for a fairer, more transparent, and resilient web. Distributed data storage not only safeguards our information but also gives us back control over how we share and use it.  </p>
<p>The future of the web will not be just a technical evolution, but a cultural shift toward a more democratic and human internet. Are you ready to be part of this revolution?</p>
<h2 id="heading-explore-more">Explore More</h2>
<ul>
<li><a target="_blank" href="https://genosdb.com/building-genosdb-p2p-database">Why I Built GenosDB</a> — the full story behind the P2P database</li>
<li><a target="_blank" href="https://genosdb.com/genosdb-nostr-decentralized-data">GenosDB and the Nostr Network</a> — decentralized signaling for P2P apps</li>
<li><a target="_blank" href="https://genosdb.com/popular-p2p-distributed-databases">Most Popular P2P Distributed Databases</a> — comparing browser-native options</li>
</ul>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Gun: An Ecosystem of Tools for Distributed Applications]]></title><description><![CDATA[What Is GunDB?
GunDB (also known as Gun.js) is an open-source, real-time, distributed graph database written in JavaScript. Designed with an Offline-First approach and a keep-it-simple philosophy, it enables developers to build encrypted, community-r...]]></description><link>https://genosdb.com/gundb</link><guid isPermaLink="true">https://genosdb.com/gundb</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 01:32:42 GMT</pubDate><enclosure url="https://i.imgur.com/5rw8rMJ.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2 id="heading-what-is-gundb">What Is GunDB?</h2>
<p><strong>GunDB</strong> (also known as Gun.js) is an open-source, real-time, distributed graph database written in JavaScript. Designed with an <em>Offline-First</em> approach and a <em>keep-it-simple</em> philosophy, it enables developers to build encrypted, community-run, peer-to-peer applications directly in the browser.</p>
<p>GunDB is used in production by <strong>Internet Archive</strong> and <strong>HackerNoon</strong>, and decentralized alternatives to platforms like Reddit, YouTube, and Wikipedia push terabytes of daily P2P traffic through the GUN network.</p>
<h2 id="heading-key-features">Key Features</h2>
<ul>
<li><strong>Real-time data synchronization</strong></li>
<li><strong>Decentralized and distributed architecture</strong> with cryptographically secure data replication</li>
<li><strong>Scalability</strong> without relying on central servers or a continuous internet connection</li>
</ul>
<p>Default servers act as backup and propagation checkpoints. Among available adapters, you can use <strong>Amazon S3</strong>, among others.</p>
<p>When a client-side app (browser) requests data, it merges responses with its local state using a <strong>CRDT</strong>, then caches the result.</p>
<p>This means:</p>
<ul>
<li>Next time, the data loads instantly — even offline.</li>
<li>Data is replicated across all browsers that requested it.</li>
<li>If your server goes down, data can still be recovered from other peers.</li>
</ul>
<p>Losing important information becomes nearly impossible, since all copies would have to disappear simultaneously.</p>
<div class="embed-wrapper"><div class="embed-loading"><div class="loadingRow"></div><div class="loadingRow"></div></div><a class="embed-card" href="https://www.youtube.com/watch?v=b09pXG_wiVQ">https://www.youtube.com/watch?v=b09pXG_wiVQ</a></div>
<h2 id="heading-core-concepts">Core Concepts</h2>
<ul>
<li>Real-Time synchronization across peers</li>
<li>Distributed peer-to-peer architecture</li>
<li>Decentralized — no single point of failure</li>
<li>Offline-First with local state merge</li>
<li>Graph Database with CRDT conflict resolution</li>
<li>Radix Storage Engine (RAD)</li>
<li>Standalone JavaScript — no external dependencies</li>
<li>Small bundle size</li>
</ul>
<h2 id="heading-sea-security-encryption-and-authorization">SEA: Security, Encryption, and Authorization</h2>
<p>GunDB's cryptographic layer is called <strong>SEA</strong> (Security, Encryption, Authorization). It provides:</p>
<ul>
<li><strong>User authentication</strong> with public/private key pairs generated via the Web Crypto API</li>
<li><strong>Data signing</strong> — every write operation can be cryptographically signed by its author</li>
<li><strong>Data encryption</strong> — end-to-end encryption between users using ECDH key exchange</li>
<li><strong>Proof of work</strong> — optional computational proof for rate limiting</li>
</ul>
<p>SEA is the foundation for building trusted, authenticated applications on top of GunDB. It uses browser-native cryptographic primitives (ECDSA for signing, ECDH for shared secrets, AES-GCM for encryption) rather than external libraries.</p>
<h2 id="heading-known-limitations">Known Limitations</h2>
<p>GunDB has been in development for many years — a remarkable achievement for an open-source P2P project. But with that longevity comes accumulated technical debt, which is natural in any long-lived codebase. Some areas where this is most visible:</p>
<ul>
<li><strong>localStorage as default storage</strong> — The default persistence layer uses <code>localStorage</code>, a synchronous API with a ~5MB cap that blocks the main thread. Modern alternatives like OPFS and IndexedDB offer significantly better performance. The RAD (Radix) adapter improves this but adds complexity.</li>
<li><strong>HAM conflict resolution</strong> — GunDB uses a Hypothetical Amnesia Machine based on wall-clock timestamps. In distributed systems, clock drift between devices can lead to unpredictable conflict resolution. Newer approaches like Hybrid Logical Clocks (HLC) solve this without relying on synchronized clocks.</li>
<li><strong>Sync after extended disconnections</strong> — Prolonged offline periods can result in difficult-to-debug synchronization states, as there is no operation log to replay missed mutations. Without an oplog, there is no way to send only the delta of what changed.</li>
<li><strong>Relay infrastructure</strong> — While GunDB is decentralized, it relies on relay servers for peer discovery and data propagation. The default public relays can become bottlenecks under heavy load.</li>
<li><strong>Codebase complexity</strong> — Years of incremental development have resulted in a codebase that can be challenging for new contributors to navigate. This is a common pattern in projects that have evolved organically over a long period.</li>
</ul>
<p>These are engineering trade-offs, not defects — every distributed system makes them. For projects that need different trade-offs (OPFS storage, hybrid delta sync, Cellular Mesh topology), next-generation alternatives like <a target="_blank" href="https://genosdb.com/building-genosdb-p2p-database">GenosDB</a> were designed from scratch to address these specific challenges.</p>
<h2 id="heading-plugins-and-modules">Plugins and Modules</h2>
<ul>
<li><strong>Users (SEA)</strong> — Security, Encryption, Authorization</li>
<li><strong>Storage adapters</strong> — file, LevelDB, RAD, and more</li>
<li><strong>Integration</strong> — Vue.js, React, and community adapters</li>
</ul>
<h2 id="heading-gun-recommended-links">Gun Recommended Links</h2>
<ul>
<li><a target="_blank" href="https://gun.eco/docs">Documentation</a></li>
<li><a target="_blank" href="https://github.com/amark/gun">Gun on GitHub</a></li>
<li><a target="_blank" href="https://gun.eco/docs/Whitepaper.pdf">Whitepaper</a></li>
<li><a target="_blank" href="https://gun.eco/docs/Distributed-Matters">Distributed Matters</a></li>
</ul>
<h2 id="heading-beyond-gundb-the-next-generation">Beyond GunDB: The Next Generation</h2>
<p>Inspired by the GunDB ecosystem, <strong>GenosDB</strong> was created to push P2P databases further — with a modular plugin architecture, zero-trust security model with RBAC, Cellular Mesh networking for scalability, and OPFS-based persistent storage. If you're building decentralized applications and want a modern, actively maintained alternative, <a target="_blank" href="https://genosdb.com">explore GenosDB</a>.</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[GenosDB: Distributed Graph-Based Database]]></title><description><![CDATA[In modern web development, we’ve reached an inflection point. Users demand experiences that are fast, collaborative, and work offline, but traditional architectures built on centralized servers have become a bottleneck. Synchronizing state between mu...]]></description><link>https://genosdb.com/genosdb-distributed-graph-database</link><guid isPermaLink="true">https://genosdb.com/genosdb-distributed-graph-database</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:41:31 GMT</pubDate><enclosure url="https://i.imgur.com/sA8Qzvz.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<hr />
<p>In modern web development, we’ve reached an inflection point. Users demand experiences that are <strong>fast, collaborative, and work offline</strong>, but traditional architectures built on centralized servers have become a bottleneck. Synchronizing state between multiple users in real-time is complex, expensive, and fragile.<strong>What if we could remove the central server from the equation?</strong>GenosDB isn’t just another database; it’s a fundamental answer to this challenge. It’s a <strong>P2P, local-first, distributed graph database</strong> designed from the ground up to empower developers to build the next generation of web applications: systems that are inherently collaborative, secure, and resilient.In this article, we’ll explore how GenosDB’s unique architecture solves some of the most difficult problems in real-time development.</p>
<h2 id="heading-from-manual-syncing-to-an-automatic-dataflow">From Manual Syncing to an Automatic Dataflow</h2>
<p>One of the biggest headaches in collaborative applications is state management. How do you ensure that when one user drags a card on a Kanban board, every other user sees the change instantly?GenosDB solves this natively:- <strong>Real-time P2P Synchronization:</strong> Using <strong>GenosRTC</strong> (a layer on top of WebRTC), any data change on one device is intelligently and automatically propagated to all other connected peers. You don’t need to set up WebSockets, manage reconnections, or write complex sync logic. It just works.- <strong>Cross-Tab Consistency:</strong> Thanks to BroadcastChannel, if a user has your application open in multiple tabs, the state remains perfectly synchronized between them with no extra effort.</p>
<h2 id="heading-your-application-always-available-local-first-persistence">Your Application, Always Available: Local-First Persistence</h2>
<p>What happens if a user loses their internet connection? With a traditional architecture, the application stops working. With GenosDB’s <strong>local-first</strong> approach, the experience is seamless:- <strong>Browser Storage with OPFS:</strong> GenosDB utilizes the <strong>Origin Private File System (OPFS)</strong>, a fast and persistent storage space directly in the browser. The application always reads and writes locally, which makes it incredibly fast.- <strong>Native Offline Support:</strong> Users can continue to work, create, and modify data while offline. As soon as the connection is restored, GenosDB automatically handles syncing the changes with the network.All of this is managed efficiently, using <strong>MessagePack</strong> for serialization and <strong>Pako</strong> compression to keep storage usage to a minimum.</p>
<h2 id="heading-modeling-the-real-world-the-power-of-the-graph">Modeling the Real World: The Power of the Graph</h2>
<p>Real-world applications aren’t just simple tables and rows; they are networks of interconnected data. A user <em>belongs to</em> a team, a task <em>is assigned to</em> a user, a document <em>is linked to</em> another.GenosDB embraces this reality with its <strong>graph data model</strong>. Instead of forcing your data into rigid structures, you can naturally model entities (nodes) and the relationships (links) between them. This is crucial for social applications, content management systems, and of course, virtual worlds like OVGrid.</p>
<h2 id="heading-security-in-a-serverless-world-the-sm-rbac-module">Security in a Serverless World: The SM + RBAC Module</h2>
<p>Decentralization introduces a critical question: if there’s no central server, who controls permissions? How do we prevent a malicious actor from deleting everyone’s data?This is where GenosDB’s <strong>Security Manager (SM) with Role-Based Access Control (RBAC)</strong> becomes a revolutionary feature:- <strong>Cryptographic Identity:</strong> Every user owns their identity, secured with modern cryptography through <strong>WebAuthn</strong> (passkeys, biometrics). No more passwords.- <strong>Signed Operations:</strong> Every write operation (put, link, remove) is digitally signed. The network doesn’t trust; it <strong>verifies</strong>.- <strong>Flexible Role Hierarchy:</strong> You can define roles like superadmin, admin, manager, or guest and assign granular permissions (read, write, delete). A guest cannot write data, and a manager cannot delete an admin’s work. These rules are enforced in a distributed manner by every peer on the network.This zero-trust system allows you to build complex and secure P2P applications where permissions and governance are woven into the very fabric of the database.</p>
<h2 id="heading-conclusion-start-building-the-future-today">Conclusion: Start Building the Future, Today</h2>
<h2 id="heading-genosdb-is-more-than-a-collection-of-features-its-a-cohesive-platform-designed-for-a-new-paradigm-of-web-applications-whether-youre-building-a-collaborative-tool-a-decentralized-social-network-an-app-that-needs-to-work-offline-or-simply-want-a-simpler-way-to-manage-real-time-state-genosdb-provides-the-foundation-you-need">GenosDB is more than a collection of features; it’s a cohesive platform designed for a new paradigm of web applications. Whether you’re building a collaborative tool, a decentralized social network, an app that needs to work offline, or simply want a simpler way to manage real-time state, GenosDB provides the foundation you need.</h2>
<p>&gt;</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[GenosDB: Distributed Graph Database with Module Support]]></title><description><![CDATA[Distributed Graph Databases with AI and Geospatial Query Support Modules
In the fast-paced world of web development, the ability to manage data efficiently, in real time, and in a distributed manner is more crucial than ever. GenosDB emerges as an in...]]></description><link>https://genosdb.com/genosdb-modular-architecture</link><guid isPermaLink="true">https://genosdb.com/genosdb-modular-architecture</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:41:25 GMT</pubDate><enclosure url="https://i.imgur.com/VVsvLyZ.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<hr />
<h3 id="heading-distributed-graph-databases-with-ai-and-geospatial-query-support-modules">Distributed Graph Databases with AI and Geospatial Query Support Modules</h3>
<p>In the fast-paced world of web development, the ability to manage data efficiently, in real time, and in a distributed manner is more crucial than ever. <strong>GenosDB</strong> emerges as an innovative solution — not only due to its robust foundation as a client-side P2P graph database — but also because of its inherently <strong>modular and extensible architecture</strong>. Today, we explore how this modularity unlocks a new paradigm of possibilities by integrating artificial intelligence directly into its core.</p>
<h2 id="heading-the-solid-foundations-of-genosdb">The Solid Foundations of GenosDB</h2>
<p>Before diving into its modular extensions, let’s recall the core features that make <strong>GenosDB</strong> a powerful platform:- <strong>Real-Time P2P Synchronization</strong>: Using WebRTC (via <em>GenosRTC internal module</em>) and <em>BroadcastChannel</em>, GenosDB allows automatic data sync across multiple peers and browser tabs without a central server.- <strong>Conflict-Free Consistency</strong>: Powered by <em>Hybrid Logical Clocks (HLC)</em> and a <em>Last-Write-Wins (LWW)</em> conflict resolution strategy, ensuring data convergence even under concurrent operations.- <strong>Advanced Client-Side Persistence</strong>: Leverages <em>Origin Private File System (OPFS)</em> for efficient storage with fallback to <em>IndexedDB</em>, all managed asynchronously in <em>Web Workers</em> to avoid blocking the main thread.- <strong>Optimal Efficiency</strong>: Uses <em>MessagePack</em> for binary serialization and <em>Pako (zlib)</em> for compression, minimizing bandwidth and storage usage.</p>
<h2 id="heading-the-power-of-modularity-a-growing-ecosystem">The Power of Modularity: A Growing Ecosystem</h2>
<p>The true magic of GenosDB lies in its design, which allows clean and decoupled injection of new features and operators. This is especially evident in its dynamic query and data processing capabilities.</p>
<h2 id="heading-1-a-dynamic-and-extensible-query-system-map">1. A Dynamic and Extensible Query System .map()</h2>
<p>The core of data interaction in GenosDB is its .map() method. It’s not just for retrieving data; it’s a live interface supporting:- <strong>Rich and Familiar Operators</strong>: A built-in set of operators ($eq, $ne, $gt, $gte, $lt, $lte, $in, $between, $exists, $text, $like, $regex) enables precise filtering.- <strong>Complex Logical Queries</strong>: Use of $and, $or, and $not allows building advanced logical conditions, applied recursively via createFilter.- <strong>Access to Nested Fields</strong>: With getNestedValue, it’s possible to query and sort by deeply nested fields within node value objects (e.g., user.address.city).- <strong>Pagination &amp; Sorting</strong>: Full control over results with $limit, $after, $before, and order (asc / desc) on any field.- <strong>Real-Time Updates</strong>: By providing a callback function, .map() becomes reactive — emitting initial, added, updated, and removed events, essential for dynamic UIs.</p>
<h2 id="heading-2-smart-integration-ai-powered-data">2. Smart Integration: AI-Powered Data</h2>
<p>GenosDB enhances data handling with natural language queries that integrate seamlessly into the query flow.</p>
<h3 id="heading-nl-enhanced-data-processing">NL-Enhanced Data Processing</h3>
<p><strong>How it works</strong>: The GenosDB instance is wrapped. When using .map(), a prompt option can be passed.<strong>The Process</strong>:- GenosDB filters nodes using standard operators.- The value of the resulting nodes, along with the user prompt.- The AI is instructed to modify fields <strong>within</strong> the value objects and return a JSON array with the same structure and transformed data.<strong>Use Cases</strong>: Data enrichment, translation, summarization, content generation, classification, etc. — all within the query stream.</p>
<h3 id="heading-nl-guided-query-generation">NL-Guided Query Generation</h3>
<p><strong>How it works</strong>: Similar setup with natural language queries (via a dedicated module).- Instead of a structured query object, users can pass a natural language prompt to .map() (e.g., <em>“find active users from Spain”</em>).- This prompt is sent to the API with instructions to convert it into a structured GenosDB query object (with query, order, field).- The generated query is then executed as the original .map() call.<strong>Use Cases</strong>: Makes queries accessible to non-technical users, enables natural language search, and simplifies flexible query UI design.</p>
<h2 id="heading-3-conquering-space-geospatial-operators">3. Conquering Space: Geospatial Operators</h2>
<p>For applications that handle location data, GenosDB provides a <strong>geospatial operators module</strong>.<strong>New Available Operators</strong>:- $near: Filters nodes whose coordinates (e.g., node.value.location.latitude, node.value.location.longitude) are within a specific radius (in kilometers) of a given center point.- $bbox: Filters nodes whose coordinates fall within a geographical bounding box defined by min/max latitudes and longitudes.<strong>Seamless Integration</strong>: These operators can be used in the .map() query object like any standard operator, allowing geographic filters to be combined with others.<strong>Distance Calculation</strong>: Includes an internal function for Haversine distance calculation between two geographic points.</p>
<h2 id="heading-what-makes-genosdb-unique">What Makes GenosDB Unique?</h2>
<p>The combination of these features and its modular design make GenosDB stand out:- <strong>Merging Worlds</strong>: One of the few (if not the only) client-side solutions to natively and modularly integrate graph databases, P2P sync, advanced persistence, and now, AI and geo-extensions.- <strong>True Decentralization with Local Intelligence</strong>: Doesn’t rely on a central server for business logic or sync, yet can extend local capabilities via controlled interaction with external APIs (like AI).- <strong>Extensibility at its Core</strong>: The ease of adding new operators and processing modules (as demonstrated with AI and Geo) means GenosDB can evolve with any application’s needs.- <strong>Enhanced Developer Experience</strong>: Using natural language for queries (via AIQuery.js) or enriching data on the fly (via AIModule.js) simplifies complex tasks and enables new data interaction patterns.- <strong>Client-Side Efficiency and Autonomy</strong>: Running mostly on the client with optimized storage and async processing, it reduces server load and delivers faster, more resilient UX.</p>
<h2 id="heading-the-future-is-distributed-intelligent-and-modular">The Future is Distributed, Intelligent, and Modular</h2>
<h2 id="heading-genosdb-isnt-just-a-database-its-a-platform-for-building-the-next-generation-of-decentralized-and-intelligent-web-applications-its-modular-architecture-invites-the-community-to-contribute-new-operators-processing-systems-and-extensions-shaping-a-future-where-client-side-database-capabilities-are-limited-only-by-our-imaginationif-youre-seeking-an-innovative-way-to-handle-graph-data-sync-it-in-real-time-and-extend-its-power-in-previously-unthinkable-ways-genosdb-deserves-your-attention"><strong>GenosDB</strong> isn’t just a database — it’s a platform for building the next generation of decentralized and intelligent web applications. Its modular architecture invites the community to contribute new operators, processing systems, and extensions, shaping a future where client-side database capabilities are limited only by our imagination.If you’re seeking an innovative way to handle graph data, sync it in real time, and extend its power in previously unthinkable ways — <strong>GenosDB deserves your attention</strong>.</h2>
<p>&gt;</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Technical Features of GenosDB (GDB)]]></title><description><![CDATA[remove(id): Deletes a node and all of its associated edges.- clear(): Wipes all data from the local database.- use(middleware): Registers a middleware function to validate or transform incoming P2P operations before they are applied, enabling custom ...]]></description><link>https://genosdb.com/genosdb-technical-features</link><guid isPermaLink="true">https://genosdb.com/genosdb-technical-features</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:41:20 GMT</pubDate><enclosure url="https://i.imgur.com/2r1O1t5.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<hr />
<ul>
<li>remove(id): Deletes a node and all of its associated edges.- clear(): Wipes all data from the local database.- use(middleware): Registers a middleware function to validate or transform incoming P2P operations before they are applied, enabling custom security and business logic.<h2 id="heading-querying-amp-data-access">Querying &amp; Data Access</h2>
The map(...args) method is the heart of data retrieval in GenosDB, offering both static and real-time querying capabilities.- <strong>Powerful Filtering</strong>: Supports MongoDB-style queries, sorting, and pagination ($limit, $after).- <strong>Real-Time Reactivity</strong>: By providing a callback function, map enters a reactive mode. The callback receives event objects for all matching nodes, keeping your UI perfectly in sync with the database state.- <strong>Event Object</strong>: The callback receives ({ id, value, action, edges, timestamp }).- <strong>Event Actions</strong>: 'initial' (for the starting dataset), 'added', 'updated', and 'removed'.- <strong>Recursive Graph Traversal (**</strong>$edge<strong>**)</strong>: A standout feature is the $edge operator. It allows you to perform complex, multi-hop traversals in a single query. You define a query to find the starting nodes, and the $edge sub-query filters all their descendants, returning a flat list of matching nodes from anywhere in the hierarchy.<h2 id="heading-concurrency-amp-consistency">Concurrency &amp; Consistency</h2>
GenosDB is designed for distributed environments where conflicts are inevitable.- <strong>Hybrid Logical Clocks (HLC)</strong>: Every operation is timestamped with an HLC, which combines physical time with a logical counter. This ensures a causal ordering of events across all peers.- <strong>Last-Write-Wins (LWW)</strong>: Conflicts are automatically resolved using an LWW strategy based on the newest HLC timestamp. The system includes safeguards to prevent abuse from clients with manipulated system clocks.- <strong>Clock Sync</strong>: The local HLC is intelligently updated upon receiving remote operations, ensuring the causal chain is maintained across the network.<h2 id="heading-p2p-synchronization-amp-networking-genosrtc">P2P Synchronization &amp; Networking (GenosRTC)</h2>
When initialized with rtc: true, GenosDB enables its powerful <strong>GenosRTC</strong> module via the db.room object for direct, real-time peer-to-peer communication.- <strong>Peer Lifecycle Events</strong>: Automatically detect when peers connect or disconnect.- db.room.on('peer:join', (peerId) =&gt; ...)- db.room.on('peer:leave', (peerId) =&gt; ...)- <strong>Data Channels</strong>: Send any serializable data (JSON, strings, binary) through named channels. This is perfect for chat messages, cursor positions, or game state updates.- const channel = db.room.channel('channel-name')- channel.send(data)- channel.on('message', (data, peerId) =&gt; ...)- <strong>Media Streams</strong>: Stream audio and video directly to other peers for applications like video conferencing or voice chat.- db.room.addStream(localStream)- db.room.on('stream:add', (stream, peerId) =&gt; ...)- <strong>Cross-Tab Sync</strong>: Uses a BroadcastChannel to ensure consistency between multiple tabs of the same application within a single browser. It automatically handles recovery from tab inactivity.<h2 id="heading-storage-amp-persistence">Storage &amp; Persistence</h2>
GenosDB prioritizes performance and reliability for its local storage engine.- <strong>Primary Storage</strong>: It leverages the <strong>Origin Private File System (OPFS)</strong> for high-performance, file-based storage when available. It uses synchronous file handles (createSyncAccessHandle) for maximum efficiency, falling back to asynchronous APIs or IndexedDB where necessary.- <strong>Dedicated Web Worker</strong>: All storage I/O is offloaded to a dedicated Web Worker. This prevents the main thread from being blocked and ensures a smooth user experience, even under heavy write loads. File-level locking and a write queue prevent race conditions.<h2 id="heading-performance-amp-efficiency">Performance &amp; Efficiency</h2>
</li>
<li><strong>MessagePack</strong>: Data is serialized into the compact MessagePack binary format.- <strong>Pako (Deflate)</strong>: Serialized data is compressed using Pako, significantly reducing storage footprint and network transfer sizes.<h2 id="heading-security-amp-configuration">Security &amp; Configuration</h2>
</li>
<li><strong>End-to-End Encryption</strong>: By providing a password during initialization, all persisted data and P2P data channel communications are end-to-end encrypted.- <strong>Custom Validation</strong>: Use the db.use(middleware) method to implement custom authorization logic (e.g., RBAC) by validating all incoming remote operations against your own rules.<h2 id="heading-feature-summary">Feature Summary</h2>
GenosDB is a comprehensive solution for building decentralized, real-time web applications. Its combination of a local-first architecture, a powerful graph query engine, and seamless WebRTC-based P2P synchronization makes it an ideal choice for collaborative tools, multiplayer games, and any application that demands reactive data and offline capabilities without server dependencies.</li>
</ul>
<hr />
<p>&gt;</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Most Popular Peer-to-Peer Distributed Databases]]></title><description><![CDATA[By the end of this guide, you’ll understand not only what makes a true browser-native P2P database possible, but why it matters.

For developers building the next generation of web applications, the promise of a truly peer-to-peer (P2P) architecture ...]]></description><link>https://genosdb.com/popular-p2p-distributed-databases</link><guid isPermaLink="true">https://genosdb.com/popular-p2p-distributed-databases</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:41:14 GMT</pubDate><enclosure url="https://i.imgur.com/ZaHIA9A.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<blockquote>
<p>By the end of this guide, you’ll understand not only what makes a true browser-native P2P database possible, but why it matters.</p>
</blockquote>
<p>For developers building the next generation of web applications, the promise of a truly peer-to-peer (P2P) architecture is the ultimate goal: real-time collaboration, offline-first functionality, and resilience without costly, centralized servers.</p>
<p>But the journey to find the right “P2P database” is a treacherous one. The landscape is a confusing maze of protocols, libraries, and databases, many of which carry a legacy from a server-first world.</p>
<p>This guide is a developer’s map through that maze. We will start with the broad universe of distributed data technologies, apply a strict filter to find what is truly viable for modern, browser-native applications, and ultimately discover the solution that meets today’s demands for performance and security.</p>
<h2 id="heading-step-1-the-great-filter-separating-protocols-from-products">Step 1: The Great Filter — Separating Protocols from Products</h2>
<p>The first challenge is that many technologies listed as “P2P databases” are actually <strong>low-level protocols or libraries</strong>, not integrated database solutions. They provide the building blocks but leave the hardest parts — storage, querying, and conflict resolution — to the developer.</p>
<p>Let’s apply our first filter: <strong>Is it a complete database, or a state synchronization library?</strong></p>
<ul>
<li><strong>Libraries like Yjs, Automerge, and Trystero:</strong> These are brilliant CRDT and P2P communication libraries. They are exceptional at synchronizing the state of a JSON object or a text document in real-time. However, they are <strong>not databases</strong>. They don’t provide a persistent storage engine or a query API out of the box.</li>
<li>You still need to build your database on top of them, often by pairing them with IndexedDB.</li>
</ul>
<p>Our quest is for a complete, out-of-the-box database. So, while these libraries are a crucial part of the ecosystem, we’ll set them aside for now.</p>
<h2 id="heading-step-2-the-browser-native-filter-nodejs-vs-the-web">Step 2: The Browser-Native Filter — Node.js vs. The Web</h2>
<p>The next, and most critical, filter is: <strong>Can it run entirely within the browser, without a required Node.js runtime or backend daemon?</strong></p>
<p>This is where the majority of powerful distributed technologies are eliminated for our specific use case.</p>
<ul>
<li><strong>Technologies like Hypercore Protocol (with Hyperbee), BigchainDB, and KappaDB:</strong> These are powerful, server-first P2P technologies. They are designed to run in environments with full filesystem and network access, like a Node.js server. While it’s sometimes possible to bridge them to a browser via WebSockets or WebRTC relays, this introduces a centralized component and complexity that violates our “truly P2P, browser-native” requirement.</li>
<li>They are not designed to be initialized and run directly and solely from a user’s browser tab.</li>
</ul>
<p>After applying these two strict filters, the vast landscape shrinks dramatically. We are left with a handful of contenders that have genuinely attempted to solve the browser-P2P database challenge. This is where the real comparison begins.</p>
<h2 id="heading-step-3-the-old-guard-a-look-at-the-pioneers">Step 3: The Old Guard — A Look at the Pioneers</h2>
<p>Two names have dominated this space for years: <strong>GunDB</strong> and <strong>OrbitDB</strong>. They were groundbreaking and laid the foundation for what was possible. Let’s analyze them with a modern developer’s perspective.</p>
<h3 id="heading-gundb-the-resilient-veteran">GunDB: The Resilient Veteran</h3>
<p>GunDB is a legend. It was one of the first to offer a truly serverless, P2P graph database that runs in the browser.</p>
<ul>
<li><strong>Strengths:</strong><ul>
<li><strong>Truly Decentralized:</strong> It achieves P2P communication without mandatory servers, a remarkable feat.</li>
<li><strong>Resilient:</strong> Its CRDT-inspired approach to conflict resolution makes it robust.</li>
</ul>
</li>
<li><strong>Modern-Day Challenges:</strong><ul>
<li><strong>Mature Architecture</strong>: Built with earlier JavaScript conventions, the codebase may require some adaptation for developers accustomed to modern tooling and workflows.</li>
<li><strong>Performance Considerations</strong>: In high-throughput scenarios, its resource usage may require careful tuning, especially for performance-sensitive applications such as VR or real-time gaming.</li>
</ul>
</li>
</ul>
<p><strong>Verdict:</strong> A pioneering technology that proved the concept, but its architecture shows its age. For new projects demanding peak performance, it presents significant hurdles.</p>
<h3 id="heading-orbitdb-the-ipfs-powered-log">OrbitDB: The IPFS-Powered Log</h3>
<p>OrbitDB takes a different approach, building on the ambitious <strong>IPFS (InterPlanetary File System)</strong>.</p>
<ul>
<li><strong>Strengths:</strong><ul>
<li><strong>Immutable Data:</strong> Its event-log structure is excellent for applications requiring a full history of changes.</li>
<li><strong>IPFS Integration:</strong> A natural fit if your application is already invested in the IPFS ecosystem.</li>
</ul>
</li>
<li><strong>Modern-Day Challenges:</strong><ul>
<li><strong>Heavy Dependency:</strong> js-ipfs, the browser implementation of IPFS, is notoriously resource-intensive, increasing bundle size and memory usage.</li>
<li><strong>Browser Limitations:</strong> The browser version of IPFS often relies on gateway servers or has persistence issues, compromising the “truly P2P” ideal.</li>
</ul>
</li>
</ul>
<p><strong>Verdict:</strong> An interesting choice for IPFS-native apps, but its heavy dependencies and browser performance issues make it a difficult recommendation for general-purpose web apps.</p>
<p>“These systems proved what was possible — but the web itself has evolved. Today’s browsers, APIs, and performance expectations call for a new foundation.”</p>
<h2 id="heading-step-4-the-paradigm-shift-introducing-genosdb">Step 4: The Paradigm Shift — Introducing GenosDB</h2>
<p>After exploring the strengths and limits of earlier solutions, it becomes clear that a new generation of P2P databases needs to approach the browser differently — one that blends performance, simplicity, and resilience by design.</p>
<p><strong>GenosDB</strong> is a distributed, real-time graph database built for the modern web from the ground up. It doesn’t compete with the pioneers — it builds on their lessons.</p>
<h3 id="heading-how-genosdb-evolves-the-model">How GenosDB Evolves the Model</h3>
<p><strong>Performance by Design:</strong> GenosDB employs <em>debouncing</em> as a first line of defense against transmission overload. Instead of relying on cascading ACK chains like in GUN’s mesh, it manages load proactively — coalescing writes, batching network operations, and balancing disk I/O. This prevents backpressure before it occurs, keeping both peers and the UI responsive under heavy load.</p>
<p><strong>Modern Persistence:</strong> By using the <strong>Origin Private File System (OPFS)</strong> for high-throughput, non-blocking storage, GenosDB achieves the performance of native databases directly in the browser, with zero external dependencies.</p>
<p><strong>Efficient Communication:</strong> The WebRTC-based sync layer was rewritten for predictable behavior and low overhead, avoiding redundant message floods through a debounced task pipeline.</p>
<p><strong>Compact &amp; Secure:</strong> Data is serialized with <strong>MessagePack</strong> and compressed with <strong>Pako</strong>, ensuring minimal footprint over the wire. A built-in <strong>Security Manager (SM)</strong> brings RBAC and WebAuthn support for a zero-trust environment — something older P2P databases never had to tackle directly.</p>
<p><strong>Developer Experience:</strong> Its modular, asynchronous design makes it approachable yet powerful. The graph API supports advanced recursive traversals and reactive queries out of the box.</p>
<p>“Here’s a quick summary of how the leading P2P databases compare in focus and strengths.”</p>
<hr />
<h3 id="heading-gundb">GunDB</h3>
<ul>
<li><strong>Vibe:</strong> The Resilient Pioneer.</li>
<li><strong>Best For:</strong> Simple, decentralized apps where resilience is key and performance is not critical.</li>
<li><strong>Watch Out For:</strong> Legacy architecture, potential performance issues, and unpredictable states in complex apps.</li>
</ul>
<hr />
<h3 id="heading-orbitdb-with-js-ipfs">OrbitDB (with js-IPFS)</h3>
<ul>
<li><strong>Vibe:</strong> The IPFS-Native Log.</li>
<li><strong>Best For:</strong> Applications deeply integrated with the IPFS ecosystem that need an immutable history.</li>
<li><strong>Watch Out For:</strong> Heavy performance overhead, large bundle size, and browser-related complexities of IPFS.</li>
</ul>
<hr />
<h3 id="heading-genosdb">GenosDB</h3>
<ul>
<li><strong>Vibe:</strong> The High-Performance Modern Successor.</li>
<li><strong>Best For:</strong> New, demanding web applications requiring real-time collaboration, high performance, modern security, and a superior developer experience.</li>
<li><strong>Key Features:</strong> OPFS storage, built-in RBAC + WebAuthn, lightweight P2P layer, advanced graph database built with a Zero-Trust Security Model</li>
</ul>
<h2 id="heading-choosing-the-right-p2p-database">Choosing the Right P2P Database</h2>
<p><a target="_blank" href="https://github.com/amark/gun">GunDB</a> remains one of the most important milestones in the journey toward a decentralized web. Its community, perseverance, and years of experimentation proved that a peer-to-peer database could truly run in the browser — long before most believed it was possible.</p>
<p><a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">GenosDB</a> was built from the ground up to redefine data synchronization on the web through its innovative <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosrtc-api-reference.md">GenosRTC</a> protocol.</p>
<p>It takes a different approach — a modular, top-level-await factory design — where every layer, from the storage engine to the real-time network flow, is engineered to remove the bottlenecks and assumptions that have constrained peer-to-peer systems for years.</p>
<p>Driven by an obsession with speed, stability, and simplicity, GenosDB delivers a truly modern architecture — built for today’s web and ready for what comes next.</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[GenosDB Represents Hierarchical and Inheritance Relationships]]></title><description><![CDATA[GenosDB is a name with meaning intrinsically linked to the nature of graphs, providing clear identity, conceptual relevance, and competitive advantage in describing the fundamentals of a distributed database.The term genos originates from the Greek w...]]></description><link>https://genosdb.com/genosdb-hierarchical-relationships</link><guid isPermaLink="true">https://genosdb.com/genosdb-hierarchical-relationships</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:41:08 GMT</pubDate><enclosure url="https://i.imgur.com/1TPPsPz.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<hr />
<h2 id="heading-genosdb-is-a-name-with-meaning-intrinsically-linked-to-the-nature-of-graphs-providing-clear-identity-conceptual-relevance-and-competitive-advantage-in-describing-the-fundamentals-of-a-distributed-databasethe-term-genos-originates-from-the-greek-word-genos-meaning-origin-lineage-class-type-or-family-this-makes-it-conceptually-appropriate-for-a-graph-based-database-as-it-reflects-hierarchical-structures-and-relationships-between-nodeskey-reasons-that-led-me-to-name-my-distributed-database-project-genosdb-represents-hierarchical-and-inheritance-relationships-in-graphs-connections-often-reflect-structures-such-as-lineages-types-or-categories-genos-evokes-these-ideas-which-are-natural-for-modeling-interrelated-data-evokes-structure-and-organization-it-reflects-how-nodes-can-be-grouped-into-families-or-classes-which-is-useful-for-semantic-or-knowledge-graphs-unique-and-memorable-it-is-not-saturated-in-search-engines-or-the-tech-ecosystem-which-facilitates-identity-and-positioning-compatible-with-the-gdb-acronym-it-maintains-coherence-with-the-projects-initials-without-causing-confusion-with-existing-databases"><strong>GenosDB</strong> is a name with meaning intrinsically linked to the nature of graphs, providing clear identity, conceptual relevance, and competitive advantage in describing the fundamentals of a distributed database.The term <em>genos</em> originates from the Greek word γένος, meaning: origin, lineage, class, type, or family. This makes it conceptually appropriate for a graph-based database, as it reflects hierarchical structures and relationships between nodes.<strong>Key reasons that led me to name my distributed database project “GenosDB”:</strong>- <strong>Represents hierarchical and inheritance relationships:</strong>- In graphs, connections often reflect structures such as lineages, types, or categories. <em>Genos</em> evokes these ideas, which are natural for modeling interrelated data.- <strong>Evokes structure and organization:</strong>- It reflects how nodes can be grouped into “families” or classes, which is useful for semantic or knowledge graphs.- <strong>Unique and memorable:</strong>- It is not saturated in search engines or the tech ecosystem, which facilitates identity and positioning.- <strong>Compatible with the GDB acronym:</strong>- It maintains coherence with the project’s initials without causing confusion with existing databases.</h2>
<p>&gt;</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[GenosDB and the Nostr Network: Powering the Future of Decentralized Data]]></title><description><![CDATA[Introduction to NostrNostr, short for “Notes and Other Stuff Transmitted by Relays”, is an emerging technology that is revolutionizing how we think about online communication. Unlike traditional social media platforms, Nostr is built on principles of...]]></description><link>https://genosdb.com/genosdb-nostr-decentralized-data</link><guid isPermaLink="true">https://genosdb.com/genosdb-nostr-decentralized-data</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:38:33 GMT</pubDate><enclosure url="https://i.imgur.com/Tu5zMuX.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<hr />
<p><strong>Introduction to Nostr</strong>Nostr, short for <em>“Notes and Other Stuff Transmitted by Relays”</em>, is an emerging technology that is revolutionizing how we think about online communication. Unlike traditional social media platforms, Nostr is built on principles of decentralization and privacy, offering users unprecedented control over their data and communications.</p>
<h2 id="heading-core-technologies-behind-nostr">Core Technologies Behind Nostr</h2>
<p><strong>1. Decentralized Architecture</strong>Nostr employs a decentralized architecture where <em>relays</em> act as intermediary nodes to transmit messages between users. This eliminates the need for a central server, reducing the risks of censorship and system failures.<strong>2. End-to-End Encryption</strong>Security is a core priority in Nostr. All communications are end-to-end encrypted, ensuring that only intended recipients can read the messages. This protects user privacy and prevents unauthorized access to data.<strong>3. Cryptographic Keys</strong>Nostr uses cryptographic key pairs (public and private) to authenticate users and sign messages. The public key serves as a unique identity, while the private key is used to sign messages, ensuring authenticity and integrity.<strong>4. Relays</strong>Relays are servers that store and forward messages. Anyone can run a relay, contributing to the network’s decentralization. Users can choose which relays to connect to, giving them control over how their data is handled.<strong>5. Open Protocol</strong>Nostr is an open protocol, meaning any developer can build applications that are Nostr-compatible. This fosters innovation and diversity within the ecosystem, allowing new ideas and solutions to emerge.</p>
<h2 id="heading-advantages-of-nostr">Advantages of Nostr</h2>
<p><strong>1. Privacy and Security</strong>With end-to-end encryption and cryptographic key usage, Nostr offers a high level of privacy and security. Users have full control over their data and communications.<strong>2. Censorship Resistance</strong>Nostr’s decentralized architecture makes it resistant to censorship. There’s no central point of control, making it difficult for any entity to block or manipulate content.<strong>3. Interoperability</strong>As an open protocol, Nostr enables seamless interaction between different applications. Users can switch apps without losing their data or connections.<strong>4. User Control</strong>Users maintain complete control over their data and can choose which relays to connect to. This flexibility allows them to shape their network experience according to their preferences.
%[https://www.youtube.com/watch?v=0YDj1QdL2Zs]</p>
<h2 id="heading-related-linksfor-more-information-about-nostr-and-its-technology-you-can-visit-the-following-links-official-nostr-websitehttpsgithubcomnostr-protocolnostrnostr-represents-a-significant-step-toward-a-more-decentralized-and-private-web-as-more-people-and-developers-adopt-this-technology-we-can-expect-a-transformation-in-how-we-interact-and-share-information-online"><strong>Related Links</strong>For more information about Nostr and its technology, you can visit the following links:- <a target="_blank" href="https://github.com/nostr-protocol/nostr">Official Nostr Website</a>Nostr represents a significant step toward a more decentralized and private web. As more people and developers adopt this technology, we can expect a transformation in how we interact and share information online.</h2>
<p>&gt;</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[RBAC | Role-Based Access Control]]></title><description><![CDATA[RBAC stands for Role-Based Access Control, a widely used security model for managing permissions and restrictions in software systems, applications, or databases. Instead of assigning permissions directly to individual users, RBAC organizes permissio...]]></description><link>https://genosdb.com/rbac-role-based-access-control</link><guid isPermaLink="true">https://genosdb.com/rbac-role-based-access-control</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:38:29 GMT</pubDate><enclosure url="https://i.imgur.com/ZzMi6hh.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<hr />
<p><strong>RBAC</strong> stands for <strong>Role-Based Access Control</strong>, a widely used security model for managing permissions and restrictions in software systems, applications, or databases. Instead of assigning permissions directly to individual users, RBAC organizes permissions into <strong>roles</strong>, which are then assigned to users.</p>
<h2 id="heading-how-rbac-works">How RBAC Works</h2>
<p>RBAC is based on three core concepts:<strong>1. Roles</strong>A role is a collection of permissions that defines what a user can do within the system. Examples:- admin: Can perform all operations.- editor: Can create and modify content, but not delete it.- guest: Can only read content.<strong>2. Permissions</strong>Permissions are specific actions a role can perform. Common examples include:- read: View data.- write: Create or modify data.- delete: Remove data.- publish: Publish content.<strong>3. Role Assignment</strong>Each user in the system is assigned one or more roles, depending on their responsibilities. Examples:- User <strong>Alice</strong> has the admin role.- User <strong>Bob</strong> has the editor role.<strong>Optional: Role Inheritance</strong>In some systems, roles can inherit permissions from other roles. For example:- The admin role inherits all permissions from editor and adds extra permissions like delete.
<img src="https://cdn-images-1.medium.com/max/800/0*opxTP-JGeRLfd3hF" alt /></p>
<h2 id="heading-practical-example">Practical Example</h2>
<p>Imagine a web app with the following roles and permissions:</p>
<pre><code><span class="hljs-keyword">const</span> roles = {  <span class="hljs-attr">superadmin</span>: { <span class="hljs-attr">can</span>: [<span class="hljs-string">"assignRole"</span>], <span class="hljs-attr">inherits</span>: [<span class="hljs-string">"admin"</span>] },  <span class="hljs-attr">admin</span>: { <span class="hljs-attr">can</span>: [<span class="hljs-string">"delete"</span>], <span class="hljs-attr">inherits</span>: [<span class="hljs-string">"manager"</span>] },  <span class="hljs-attr">manager</span>: { <span class="hljs-attr">can</span>: [<span class="hljs-string">"publish"</span>], <span class="hljs-attr">inherits</span>: [<span class="hljs-string">"user"</span>] },  <span class="hljs-attr">user</span>: { <span class="hljs-attr">can</span>: [<span class="hljs-string">"write"</span>], <span class="hljs-attr">inherits</span>: [<span class="hljs-string">"guest"</span>] },  <span class="hljs-attr">guest</span>: { <span class="hljs-attr">can</span>: [<span class="hljs-string">"read"</span>] },};
</code></pre><p><img src="https://cdn-images-1.medium.com/max/800/0*YRkPu9guexvYwrM3.png" alt />
<strong>Explanation:</strong>- superadmin: Can assign roles and inherits from admin.- admin: Can delete content and inherits from manager.- manager: Can publish content and inherits from user.- user: Can write content and inherits from guest.- guest: Can only read content.<strong>Example in Use:</strong>If a user with the user role tries to perform delete, access will be denied because user doesn’t have that permission.</p>
<h2 id="heading-advantages-of-rbac">Advantages of RBAC</h2>
<p><img src="https://cdn-images-1.medium.com/max/800/0*kkSpppZ7U3jAEJWI.jpg" alt />
<strong>1. Simplified Permission Management</strong>You manage permissions at the role level instead of individually per user — ideal for systems with many users.<strong>2. Scalability</strong>As your user base grows, you only need to assign roles — no need for manual permission handling per user.<strong>3. Consistency</strong>Users with similar responsibilities receive the same permissions, reducing configuration errors.<strong>4. Enhanced Security</strong>Restricting actions to specific roles minimizes the risk of unauthorized access or accidental changes.<strong>5. Flexibility</strong>You can customize roles and permissions to match the specific needs of your application.</p>
<h2 id="heading-common-use-cases">Common Use Cases</h2>
<ul>
<li><strong>Web Applications</strong>: Control who can access pages or perform specific actions (e.g., edit a post, delete a comment).- <strong>Databases</strong>: Restrict access to tables or records based on user roles.- <strong>Blockchain &amp; Metamask</strong>: In your project, RBAC integrates with WebAuthn for authentication, assigning roles to blockchain addresses and checking permissions before critical operations.- <strong>Enterprises</strong>: Used to manage access to internal resources like file systems, collaboration tools, and enterprise apps.<h2 id="heading-rbac-vs-other-access-control-models">RBAC vs. Other Access Control Models</h2>
<strong>Model**</strong>Description<strong>**RBAC (Role-Based)</strong>Permissions are assigned to roles; roles are assigned to users.<strong>ABAC (Attribute-Based)</strong>Permissions are granted based on user, resource, or environment attributes.<strong>DAC (Discretionary Access Control)</strong>Resource owners decide who can access their resources.<strong>MAC (Mandatory Access Control)</strong>The system enforces strict security policies based on classification levels.<strong>RBAC</strong> is the most common due to its <strong>simplicity and flexibility</strong>.<h2 id="heading-summary">Summary</h2>
RBAC is an efficient and scalable way to manage permissions in complex systems. In your project, RBAC enables:- Defining role and permission hierarchies- Assigning roles to authenticated users (e.g., via Metamask)- Verifying permissions before executing critical operationsThis approach not only strengthens security but also simplifies user and access management within the system. 🚀</li>
</ul>
<hr />
<p>&gt;</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Role-Based Access Control (RBAC) in GenosDB]]></title><description><![CDATA[GenosDB integrates a robust Role-Based Access Control (RBAC) module designed to secure peer-to-peer distributed graph databases through cryptographically verifiable user identities and permissions.Key Concepts:• Identity Management:Users are identifi...]]></description><link>https://genosdb.com/genosdb-rbac-access-control</link><guid isPermaLink="true">https://genosdb.com/genosdb-rbac-access-control</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:38:26 GMT</pubDate><enclosure url="https://i.imgur.com/bw7Vinp.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<hr />
<p>GenosDB integrates a robust <strong>Role-Based Access Control (RBAC)</strong> module designed to secure peer-to-peer distributed graph databases through cryptographically verifiable user identities and permissions.<strong>Key Concepts:</strong>• <strong>Identity Management</strong>:Users are identified by their Ethereum addresses. Authentication supports WebAuthn (biometric or hardware key protection) and mnemonic phrase recovery. Private keys are securely managed to sign database operations.• <strong>Role Hierarchy and Permissions</strong>:Roles such as guest, user, admin, and superadmin define granular permissions (e.g., read, write, assignRole). Roles and assignments are stored within GenosDB itself as part of the synchronized distributed state.• <strong>Superadmins</strong>:One or more Ethereum addresses can be configured as superadmins with elevated privileges, including exclusive rights to assign roles to other users.• <strong>Secure P2P Operations</strong>:Every outgoing database operation is cryptographically signed by the active user’s private key. Incoming operations from peers are verified for valid signatures and checked against the user’s assigned permissions before acceptance.• <strong>Encrypted Local Data Storage</strong>:Data tied to users is compressed and encrypted using keys derived from their Ethereum identities, ensuring privacy even in distributed environments.<strong>Operational Flow:</strong>1. <strong>Initialization</strong>:RBAC is activated on a GenosDB instance by initializing a security context and optionally defining superadmin addresses.2. <strong>Authentication</strong>:Users authenticate via WebAuthn or mnemonic phrases, activating local signing capabilities.3. <strong>Role Assignment</strong>:Superadmins assign roles to user Ethereum addresses within the distributed database, with optional expiration of assignments.4. <strong>Real-Time Enforcement</strong>:Signatures and roles are verified on all nodes for each operation, ensuring integrity before changes propagate across the network.5. <strong>Security State Monitoring</strong>:Callbacks allow applications to dynamically respond to changes in authentication or permission states.<strong>Benefits:</strong>• Decentralized and cryptographically secure permission management without a central server.• Natural integration of blockchain-based identities with real-time P2P synchronization.• Granular access control, ideal for complex distributed applications.- <strong>No requirement for traditional identity management protocols like SCIM, SAML, or SSO</strong>, simplifying architecture and user experience.</p>
<h2 id="heading-rbac-in-genosdb-brief-overview">RBAC in GenosDB — Brief Overview</h2>
<h2 id="heading-genosdb-features-a-secure-role-based-access-control-rbac-system-built-for-peer-to-peer-distributed-databases-using-ethereum-based-identities-users-authenticate-with-ethereum-addresses-via-webauthn-or-mnemonic-phrases-roles-guest-user-admin-superadmin-control-fine-grained-permissions-superadmins-hold-exclusive-rights-to-assign-roles-within-the-network-all-database-operations-are-cryptographically-signed-and-verified-across-peers-data-is-encrypted-locally-ensuring-privacy-in-a-distributed-environment-no-need-for-traditional-identity-protocols-like-scim-saml-or-sso-reducing-complexitythis-enables-decentralized-real-time-permission-enforcement-ideal-for-scalable-trustless-applications">GenosDB features a secure <strong>Role-Based Access Control (RBAC)</strong> system built for peer-to-peer distributed databases using Ethereum-based identities.- Users authenticate with Ethereum addresses via WebAuthn or mnemonic phrases.- Roles (guest, user, admin, superadmin) control fine-grained permissions.- Superadmins hold exclusive rights to assign roles within the network.- All database operations are cryptographically signed and verified across peers.- Data is encrypted locally, ensuring privacy in a distributed environment.- <strong>No need for traditional identity protocols like SCIM, SAML, or SSO</strong>, reducing complexity.This enables decentralized, real-time permission enforcement ideal for scalable, trustless applications.</h2>
<p>&gt;</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Build a Serverless, P2P Real Estate Application in One File with GenosDB]]></title><description><![CDATA[Imagine building a real-time application where users can register with biometrics, publish secure data, share editing rights, and visualize geolocation on a map — all without deploying a backend server.In this tutorial, we are going to build dProp, a...]]></description><link>https://genosdb.com/genosdb-p2p-real-estate-app</link><guid isPermaLink="true">https://genosdb.com/genosdb-p2p-real-estate-app</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:38:21 GMT</pubDate><enclosure url="https://i.imgur.com/bwpTKlm.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<hr />
<h2 id="heading-imagine-building-a-real-time-application-where-users-can-register-with-biometrics-publish-secure-data-share-editing-rights-and-visualize-geolocation-on-a-map-all-without-deploying-a-backend-serverin-this-tutorial-we-are-going-to-build-dprop-a-decentralized-real-estate-marketplace-we-will-use-genosdb-a-p2p-database-that-runs-entirely-in-the-browser-to-handle-authentication-data-storage-and-real-time-synchronizationby-the-end-of-this-guide-you-will-have-a-single-file-html-application-with-real-time-updates-reactive-ui-biometric-authentication-webauthn-granular-access-control-acls-for-collaborative-editing-dark-mode-support">Imagine building a real-time application where users can register with biometrics, publish secure data, share editing rights, and visualize geolocation on a map — all <strong>without deploying a backend server</strong>.In this tutorial, we are going to build <strong>dProp</strong>, a decentralized real estate marketplace. We will use <strong>GenosDB</strong>, a P2P database that runs entirely in the browser, to handle authentication, data storage, and real-time synchronization.By the end of this guide, you will have a single-file HTML application with:- <strong>Real-time updates</strong> (Reactive UI).- <strong>Biometric Authentication</strong> (WebAuthn).- <strong>Granular Access Control</strong> (ACLs) for collaborative editing.- <strong>Dark Mode</strong> support.</h2>
<h2 id="heading-the-stack">The Stack</h2>
<h2 id="heading-frontend-vanilla-js-html5-styling-tailwindcss-via-cdn-maps-leafletjs-db-genosdb-p2p-client-side">- <strong>Frontend</strong>: Vanilla JS + HTML5.- <strong>Styling</strong>: TailwindCSS (via CDN).- <strong>Maps</strong>: Leaflet.js.- <strong>DB</strong>: GenosDB (P2P, Client-side).</h2>
<h2 id="heading-step-1-the-setup">Step 1: The Setup</h2>
<p>We start with a basic HTML5 structure. Because GenosDB is modular and efficient, we can build this entire app in a single file using ES modules.HTML</p>
<pre><code>                <span class="hljs-keyword">import</span> { gdb } <span class="hljs-keyword">from</span> <span class="hljs-string">"https://cdn.jsdelivr.net/npm/genosdb@latest/dist/index.min.js"</span>;        <span class="hljs-comment">// Application logic will go here</span>
</code></pre><h2 id="heading-we-add-a-simple-dark-mode-toggle-script-that-checks-localstorage-or-system-preferences-to-apply-the-dark-class-to-the-html-tag">We add a simple Dark Mode toggle script that checks localStorage or system preferences to apply the .dark class to the HTML tag.</h2>
<h2 id="heading-step-2-initializing-the-p2p-database">Step 2: Initializing the P2P Database</h2>
<p>To make our app “Real-time” and “Secure,” we need to initialize GenosDB with specific modules enabled.JavaScript</p>
<pre><code><span class="hljs-keyword">const</span> APP_ROLES = {    <span class="hljs-attr">admin</span>: { <span class="hljs-attr">can</span>: [<span class="hljs-string">"deleteAny"</span>], <span class="hljs-attr">inherits</span>: [<span class="hljs-string">"user"</span>] },    <span class="hljs-attr">user</span>: { <span class="hljs-attr">can</span>: [<span class="hljs-string">"write"</span>, <span class="hljs-string">"link"</span>], <span class="hljs-attr">inherits</span>: [<span class="hljs-string">"guest"</span>] },    <span class="hljs-attr">guest</span>: { <span class="hljs-attr">can</span>: [<span class="hljs-string">"read"</span>] }};<span class="hljs-keyword">async</span> <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">initApp</span>(<span class="hljs-params"></span>) </span>{    <span class="hljs-comment">// Initialize GenosDB    db = await gdb("dprop-v2", {        rtc: true, // Enables WebRTC for P2P sync        sm: {            superAdmins: ["0x..."], // Required for boot            customRoles: APP_ROLES,            acls: true // Enables Node-Level Permissions        }    });    // Reactive Auth Listener    db.sm.setSecurityStateChangeCallback(updateAuthUI);}</span>
</code></pre><h2 id="heading-whats-happening-here-rtc-true-activates-the-p2p-layer-so-browsers-can-exchange-data-directly-sm-security-manager-activates-the-cryptographic-identity-system-users-are-identified-by-ethereum-addresses-not-database-ids-acls-true-this-is-crucial-it-enables-access-control-lists-allowing-us-to-define-exactly-who-can-edit-a-specific-property"><strong>What’s happening here?</strong>- <strong>rtc: true</strong>: Activates the P2P layer so browsers can exchange data directly.- <strong>sm**</strong> (Security Manager)<strong>: Activates the cryptographic identity system. Users are identified by Ethereum addresses, not database IDs.- </strong>acls: true<strong>: This is crucial. It enables </strong>Access Control Lists<em>*, allowing us to define exactly </em>who* can edit a specific property.</h2>
<h2 id="heading-step-3-biometric-authentication-no-passwords">Step 3: Biometric Authentication (No Passwords!)</h2>
<p>Forget storing hashed passwords. We use GenosDB’s built-in Identity Management to generate a cryptographic wallet and protect it with <strong>WebAuthn</strong> (FaceID, TouchID).JavaScript</p>
<pre><code><span class="hljs-comment">// 1. Generate a new Identity (Mnemonic based)window.generateIdentity = async () =&gt; {    const id = await db.sm.startNewUserRegistration();    // Display id.mnemonic to the user securely};// 2. Protect it with Biometricswindow.protectIdentity = async () =&gt; {    await db.sm.protectCurrentIdentityWithWebAuthn();    // The private key is now encrypted with the device's hardware security module};// 3. Loginwindow.loginWebAuthn = async () =&gt; {    await db.sm.loginCurrentUserWithWebAuthn();};</span>
</code></pre><h2 id="heading-when-a-user-logs-in-dbsm-signs-every-database-operation-they-perform-this-guarantees-data-authenticity-without-a-server-verifying-sessions">When a user logs in, db.sm signs every database operation they perform. This guarantees data authenticity without a server verifying sessions.</h2>
<h2 id="heading-step-4-publishing-secure-data-with-acls">Step 4: Publishing Secure Data with ACLs</h2>
<p>When a user publishes a house, we don’t just dump JSON into the DB. We use <strong>ACLs (Access Control Lists)</strong> to ensure only the owner can edit it later.JavaScript</p>
<pre><code><span class="hljs-keyword">const</span> propertyData = {    <span class="hljs-attr">type</span>: <span class="hljs-string">'Property'</span>,    <span class="hljs-attr">title</span>: <span class="hljs-string">'Luxury Villa'</span>,    <span class="hljs-attr">price</span>: <span class="hljs-number">500000</span>,    <span class="hljs-attr">owner</span>: currentUserAddress, <span class="hljs-comment">// Stored for UI logic    status: 'available'};// Save with ACL protectionawait db.sm.acls.set(propertyData);</span>
</code></pre><h2 id="heading-by-using-dbsmaclsset-the-node-is-created-and-the-creator-is-automatically-assigned-owner-privileges-read-write-delete-any-attempt-by-another-peer-to-modify-this-node-will-be-rejected-by-the-p2p-validation-middleware">By using db.sm.acls.set, the node is created, and the creator is automatically assigned <strong>Owner</strong> privileges (Read, Write, Delete). Any attempt by another peer to modify this node will be rejected by the P2P validation middleware.</h2>
<h2 id="heading-step-5-the-magic-real-time-stream">Step 5: The “Magic” Real-Time Stream</h2>
<p>This is the heart of dProp. We want the UI to update instantly when <em>anyone</em> changes a property status or adds a listing. We use db.map() in <strong>realtime mode</strong>.JavaScript</p>
<pre><code><span class="hljs-keyword">async</span> <span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">performSearch</span>(<span class="hljs-params"></span>) </span>{    <span class="hljs-comment">// 1. Define Query    const query = { type: 'Property', status: { $ne: 'deleted' } };// 2. Subscribe to changes    const { unsubscribe } = await db.map({        query: query,        realtime: true, //  {        // This callback fires on 'initial', 'added', 'updated', or 'removed'        handleRealtimeUpdate(id, value, action);    });}</span>
</code></pre><h2 id="heading-how-it-works-realtime-true-keeps-the-connection-open-action-tells-us-if-a-node-was-added-updated-or-removed-cursor-pagination-we-can-use-after-to-implement-load-more-functionality-without-re-fetching-the-whole-list"><strong>How it works:</strong>- <strong>realtime: true</strong>: Keeps the connection open.- <strong>action</strong>: Tells us if a node was added, updated, or removed.- <strong>Cursor Pagination</strong>: We can use $after to implement "Load More" functionality without re-fetching the whole list.</h2>
<h2 id="heading-step-6-collaborative-editing-sharing-access">Step 6: Collaborative Editing (Sharing Access)</h2>
<p>A unique feature of dProp is allowing owners to share write access with other users (e.g., a real estate agent).JavaScript</p>
<pre><code><span class="hljs-built_in">window</span>.confirmShare = <span class="hljs-keyword">async</span> () =&gt; {    <span class="hljs-keyword">const</span> propertyId = <span class="hljs-built_in">document</span>.getElementById(<span class="hljs-string">'share-node-id'</span>).value;    <span class="hljs-keyword">const</span> collaboratorAddress = <span class="hljs-built_in">document</span>.getElementById(<span class="hljs-string">'share-address'</span>).value;<span class="hljs-comment">// Grant 'write' permission to the specific address    await db.sm.acls.grant(propertyId, collaboratorAddress, 'write');    // Update metadata so the UI knows this person is a collaborator    const { result: node } = await db.get(propertyId);    node.value.collaborators[collaboratorAddress] = 'write';    await db.sm.acls.set(node.value, propertyId);};</span>
</code></pre><h2 id="heading-now-the-collaborators-browser-will-validate-that-they-have-permission-to-edit-the-property-and-the-network-will-accept-their-signed-updates">Now, the collaborator’s browser will validate that they have permission to edit the property, and the network will accept their signed updates.</h2>
<h2 id="heading-step-7-atomic-ui-updates">Step 7: Atomic UI Updates</h2>
<p>To ensure the app feels like a native 60fps experience, we don’t reload the page. We perform surgical DOM updates in our callback.JavaScript</p>
<pre><code><span class="hljs-function"><span class="hljs-keyword">function</span> <span class="hljs-title">handleRealtimeUpdate</span>(<span class="hljs-params">id, value, action</span>) </span>{    <span class="hljs-keyword">const</span> existingCard = <span class="hljs-built_in">document</span>.getElementById(<span class="hljs-string">`card-<span class="hljs-subst">${id}</span>`</span>);    <span class="hljs-keyword">const</span> newCard = createCardHTML({ id, ...value }); <span class="hljs-comment">// Generate HTML string        if (action === 'removed') {        existingCard?.remove();    } else if (existingCard) {        // Atomic Replacement: Update status/price instantly        existingCard.replaceWith(newCard);     } else {        // Append new item        grid.appendChild(newCard);    }        // Update Map Marker concurrently    updateMapMarker({ id, ...value });}</span>
</code></pre><h2 id="heading-this-logic-handles-everything-initial-load-price-changes-status-updates-available-gt-sold-and-deletion">This logic handles everything: initial load, price changes, status updates (Available -&gt; Sold), and deletion.</h2>
<h2 id="heading-what-you-built">What You Built</h2>
<p>We just built a <strong>Full-Stack application</strong> using only frontend code.- <strong>Database?</strong> Local &amp; P2P (GenosDB).- <strong>Auth?</strong> Cryptographic &amp; Biometric (Security Manager).- <strong>API?</strong> None (Direct Peer Sync).This architecture drastically reduces infrastructure costs and increases data resilience. <strong>dProp</strong> isn’t just a demo; it’s a glimpse into the future of serverless, decentralized web applications.</p>
<h2 id="heading-resources">Resources</h2>
<h2 id="heading-genosdb-documentationhttpsgithubcomestebanrfpgdb-live-demohttpsestebanrfpgithubiodprop-full-source-code-githubhttpswwwgooglecomsearchqhttpsgithubcomestebanrfpgdbblobmainexamplesdprophtml">- <a target="_blank" href="https://github.com/estebanrfp/gdb">GenosDB Documentation</a>- <a target="_blank" href="https://estebanrfp.github.io/dProp/">Live Demo</a>- <a target="_blank" href="https://www.google.com/search?q=https://github.com/estebanrfp/gdb/blob/main/examples/dProp.html">Full Source Code (GitHub)</a></h2>
<p>&gt;</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Build a To-Do List in Minutes with GenosDB]]></title><description><![CDATA[The classic to-do list — but distributed and real-time across peers. Built with GenosDB in minutes, no backend. For a full-featured version with filters, see the complete To-Do List.
With GenosDB, building a P2P to-do list is as simple as it gets. No...]]></description><link>https://genosdb.com/genosdb-todolist</link><guid isPermaLink="true">https://genosdb.com/genosdb-todolist</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:20:41 GMT</pubDate><enclosure url="https://i.imgur.com/eD6FD4N.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The classic to-do list — but distributed and real-time across peers. Built with <a target="_blank" href="https://genosdb.com/building-genosdb-p2p-database">GenosDB</a> in minutes, no backend. For a full-featured version with filters, see the <a target="_blank" href="https://genosdb.com/genosdb-todolist-full">complete To-Do List</a>.</p>
<p>With <strong>GenosDB</strong>, building a P2P to-do list is as simple as it gets. No server setup, no database configuration — just import and start coding.</p>
<h2 id="heading-live-demo">Live Demo</h2>
<p><a target="_blank" href="https://estebanrfp.github.io/gdb/examples/todolist.html"><strong>Simple To-Do List</strong> — Try it live</a></p>
<blockquote>
<p><em>The simplest path to a distributed, real-time application.</em></p>
</blockquote>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Build a Full To-Do List with GenosDB]]></title><description><![CDATA[A complete, reactive to-do list with filtering, persistent OPFS storage, and real-time P2P sync — built with GenosDB and vanilla JavaScript, no backend. For a simpler version, see the quick To-Do List.
Key Features

Add, complete, and delete tasks wi...]]></description><link>https://genosdb.com/genosdb-todolist-full</link><guid isPermaLink="true">https://genosdb.com/genosdb-todolist-full</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:20:40 GMT</pubDate><enclosure url="https://i.imgur.com/SKVJ1op.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A complete, reactive to-do list with filtering, persistent OPFS storage, and real-time P2P sync — built with <a target="_blank" href="https://genosdb.com/building-genosdb-p2p-database">GenosDB</a> and vanilla JavaScript, no backend. For a simpler version, see the <a target="_blank" href="https://genosdb.com/genosdb-todolist">quick To-Do List</a>.</p>
<h2 id="heading-key-features">Key Features</h2>
<ul>
<li><strong>Add, complete, and delete tasks</strong> with instant P2P sync</li>
<li><strong>Reactive UI</strong> — <code>db.map()</code> streams changes in real-time</li>
<li><strong>OPFS persistence</strong> — data survives page reloads</li>
<li><strong>Fully serverless</strong> — no backend required</li>
</ul>
<h2 id="heading-live-demo">Live Demo</h2>
<p><a target="_blank" href="https://estebanrfp.github.io/gdb/examples/advanced-todolist.html"><strong>Advanced To-Do List</strong> — Try it live</a></p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Build a Kanban Board in Minutes with GenosDB]]></title><description><![CDATA[A real-time P2P Kanban board with drag-and-drop, persistent storage, and live sync across peers — built with GenosDB and vanilla JavaScript, no backend required.
What You Will Build
A fully functional Kanban board with columns (To Do, In Progress, Do...]]></description><link>https://genosdb.com/genosdb-kanban-board</link><guid isPermaLink="true">https://genosdb.com/genosdb-kanban-board</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:20:39 GMT</pubDate><enclosure url="https://i.imgur.com/v8SCGUC.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A real-time P2P Kanban board with drag-and-drop, persistent storage, and live sync across peers — built with <a target="_blank" href="https://genosdb.com/building-genosdb-p2p-database">GenosDB</a> and vanilla JavaScript, no backend required.</p>
<h2 id="heading-what-you-will-build">What You Will Build</h2>
<p>A fully functional Kanban board with columns (To Do, In Progress, Done) where tasks sync in real-time across all connected peers — no server required.</p>
<h2 id="heading-key-features">Key Features</h2>
<ul>
<li><strong>Real-time P2P sync</strong> — changes appear instantly for all peers</li>
<li><strong>Drag and drop</strong> between columns</li>
<li><strong>Persistent storage</strong> via OPFS</li>
<li><strong>Zero backend</strong> — runs entirely in the browser</li>
</ul>
<h2 id="heading-live-demo">Live Demo</h2>
<p><a target="_blank" href="https://estebanrfp.github.io/gdb/examples/kanban.html"><strong>Kanban Board</strong> — Try it live</a></p>
<blockquote>
<p><em>GenosDB makes building collaborative tools trivially simple.</em></p>
</blockquote>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Build a Realtime Chat App in 7 Lines of JavaScript Using GenosDB]]></title><description><![CDATA[A real-time P2P chat application in 7 lines of JavaScript — no backend, no framework, no WebSocket server. Just GenosDB and a browser.
This example demonstrates the raw simplicity and power of GenosDB: a fully functional, peer-to-peer chat applicatio...]]></description><link>https://genosdb.com/genosdb-realtime-chat</link><guid isPermaLink="true">https://genosdb.com/genosdb-realtime-chat</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:19:13 GMT</pubDate><enclosure url="https://i.imgur.com/JO89vgq.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A real-time P2P chat application in 7 lines of JavaScript — no backend, no framework, no WebSocket server. Just <a target="_blank" href="https://genosdb.com/building-genosdb-p2p-database">GenosDB</a> and a browser.</p>
<p>This example demonstrates the raw simplicity and power of GenosDB: a fully functional, peer-to-peer chat application built with nothing more than vanilla HTML and a few lines of JavaScript.</p>
<pre><code class="lang-html"><span class="hljs-meta">&lt;!DOCTYPE <span class="hljs-meta-keyword">html</span>&gt;</span>
<span class="hljs-tag">&lt;<span class="hljs-name">ul</span> <span class="hljs-attr">id</span>=<span class="hljs-string">'list'</span>&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">ul</span>&gt;</span>
<span class="hljs-tag">&lt;<span class="hljs-name">form</span> <span class="hljs-attr">id</span>=<span class="hljs-string">'form'</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">id</span>=<span class="hljs-string">'who'</span> <span class="hljs-attr">placeholder</span>=<span class="hljs-string">'name'</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">id</span>=<span class="hljs-string">'what'</span> <span class="hljs-attr">placeholder</span>=<span class="hljs-string">'say'</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">'submit'</span> <span class="hljs-attr">value</span>=<span class="hljs-string">'send'</span>&gt;</span>
<span class="hljs-tag">&lt;/<span class="hljs-name">form</span>&gt;</span>
<span class="hljs-tag">&lt;<span class="hljs-name">script</span> <span class="hljs-attr">type</span>=<span class="hljs-string">\</span>"<span class="hljs-attr">module</span>\"&gt;</span><span class="xml">
  import { gdb } from \"https://cdn.jsdelivr.net/npm/genosdb@latest/dist/index.min.js\";
  let db = await gdb('chat', { rtc: true });
  form.onsubmit = async e =&gt; {
    e.preventDefault();
    await db.put({ type: 'msg', who: who.value, what: what.value });
    what.value = '';
  };
  db.map({ query: { type: 'msg' } }, (id, data, action) =&gt; {
    list.innerHTML += `<span class="hljs-tag">&lt;<span class="hljs-name">li</span>&gt;</span><span class="hljs-tag">&lt;<span class="hljs-name">b</span>&gt;</span>${data.who}<span class="hljs-tag">&lt;/<span class="hljs-name">b</span>&gt;</span>: ${data.what}<span class="hljs-tag">&lt;/<span class="hljs-name">li</span>&gt;</span>`;
  });
</span><span class="hljs-tag">&lt;/<span class="hljs-name">script</span>&gt;</span>
</code></pre>
<h2 id="heading-how-it-works">How It Works</h2>
<ul>
<li><strong>GenosDB</strong> handles all P2P communication via WebRTC.</li>
<li><code>db.put()</code> writes a message to the distributed graph.</li>
<li><code>db.map()</code> reactively streams all messages from any peer.</li>
<li>No server. No WebSocket setup. No Firebase. Just peers.</li>
</ul>
<h2 id="heading-why-this-matters">Why This Matters</h2>
<p>This isn't a toy demo — it's a proof of concept showing that <strong>real-time, multi-user applications</strong> can be built with GenosDB in minutes, not days.</p>
<blockquote>
<p><em>7 lines. Zero backend. Infinite possibilities.</em></p>
</blockquote>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Real-Time P2P File Transfer Using GenosDB and Modern JavaScript]]></title><description><![CDATA[Transfer files directly between browsers with no upload server — using GenosDB and WebRTC data channels for peer-to-peer file streaming.
Tech Stack

GenosDB for decentralized, real-time communication.
Modern JavaScript (ES modules, async/await).
Mini...]]></description><link>https://genosdb.com/genosdb-p2p-file-transfer</link><guid isPermaLink="true">https://genosdb.com/genosdb-p2p-file-transfer</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:18:48 GMT</pubDate><enclosure url="https://i.imgur.com/YwZCF8p.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Transfer files directly between browsers with no upload server — using <a target="_blank" href="https://genosdb.com/building-genosdb-p2p-database">GenosDB</a> and WebRTC data channels for peer-to-peer file streaming.</p>
<h2 id="heading-tech-stack">Tech Stack</h2>
<ul>
<li><strong>GenosDB</strong> for decentralized, real-time communication.</li>
<li><strong>Modern JavaScript</strong> (ES modules, async/await).</li>
<li>Minimal HTML + CSS.</li>
</ul>
<h2 id="heading-key-features">Key Features</h2>
<ul>
<li><strong>Direct file transfer</strong> between peers via WebRTC data channels.</li>
<li>Automatic <strong>peer discovery</strong> on join.</li>
<li><strong>Progress tracking</strong> for large files.</li>
<li>Fully <strong>serverless</strong> — runs 100% in the browser.</li>
</ul>
<h2 id="heading-use-cases">Use Cases</h2>
<ul>
<li>Decentralized file sharing platforms.</li>
<li>Peer-to-peer collaborative tools with file exchange.</li>
<li>Privacy-first file transfer apps (no cloud, no data retention).</li>
</ul>
<h2 id="heading-live-demo">Live Demo</h2>
<p><a target="_blank" href="https://estebanrfp.github.io/gdb/examples/fileStreaming.html"><strong>Real-Time File Transfer</strong> — Join the room and start sharing files with other peers.</a></p>
<blockquote>
<p><em>GenosDB makes building decentralized, live, browser-native file transfer tools not only possible — but elegant.</em></p>
</blockquote>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Real-Time P2P Audio Streaming Using GenosDB and Modern JavaScript]]></title><description><![CDATA[Real-time audio streaming between browsers without a media server — using GenosDB and WebRTC for direct peer-to-peer audio broadcasting with zero backend infrastructure.
Tech Stack

GenosDB for decentralized, real-time communication.
Modern JavaScrip...]]></description><link>https://genosdb.com/genosdb-p2p-audio-streaming</link><guid isPermaLink="true">https://genosdb.com/genosdb-p2p-audio-streaming</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:18:36 GMT</pubDate><enclosure url="https://i.imgur.com/qs4Iqi6.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Real-time audio streaming between browsers without a media server — using <a target="_blank" href="https://genosdb.com/building-genosdb-p2p-database">GenosDB</a> and WebRTC for direct peer-to-peer audio broadcasting with zero backend infrastructure.</p>
<h2 id="heading-tech-stack">Tech Stack</h2>
<ul>
<li><strong>GenosDB</strong> for decentralized, real-time communication.</li>
<li><strong>Modern JavaScript</strong> (ES modules, async/await).</li>
<li><strong>HTML5 audio API</strong> + minimal CSS for layout.</li>
</ul>
<h2 id="heading-key-features">Key Features</h2>
<ul>
<li>Live <strong>microphone streaming</strong> between peers.</li>
<li>Automatic <strong>peer discovery</strong> on join.</li>
<li>Dynamic DOM updates with <strong>audio elements per peer</strong>.</li>
<li>Fully <strong>serverless</strong> — runs 100% in the browser.</li>
</ul>
<h2 id="heading-use-cases">Use Cases</h2>
<ul>
<li>Decentralized voice chat platforms.</li>
<li>Peer-to-peer collaborative tools with live audio.</li>
<li>Privacy-first audio apps (no cloud, no data retention).</li>
</ul>
<h2 id="heading-live-demo">Live Demo</h2>
<p><a target="_blank" href="https://estebanrfp.github.io/gdb/examples/audioStreaming.html"><strong>Real-Time Audio Streaming</strong> — Join the room and start streaming your microphone to other peers.</a></p>
<blockquote>
<p><em>GenosDB makes building decentralized, live, browser-native communication tools not only possible — but elegant.</em></p>
</blockquote>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Real-Time P2P Video Streaming Using GenosDB and Modern JavaScript]]></title><description><![CDATA[Real-time video streaming between browsers without a media server — using GenosDB and WebRTC data channels for signaling and peer discovery, with direct in the browser.
Tech Stack

GenosDB for decentralized, real-time communication.
Modern JavaScript...]]></description><link>https://genosdb.com/genosdb-p2p-video-streaming</link><guid isPermaLink="true">https://genosdb.com/genosdb-p2p-video-streaming</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:16:28 GMT</pubDate><enclosure url="https://i.imgur.com/nsMWt1c.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Real-time video streaming between browsers without a media server — using <a target="_blank" href="https://genosdb.com/building-genosdb-p2p-database">GenosDB</a> and WebRTC data channels for signaling and peer discovery, with direct in the browser.</p>
<h2 id="heading-tech-stack">Tech Stack</h2>
<ul>
<li><strong>GenosDB</strong> for decentralized, real-time communication.</li>
<li><strong>Modern JavaScript</strong> (ES modules, async/await).</li>
<li><strong>HTML5 video API</strong> + minimal CSS for layout.</li>
</ul>
<h2 id="heading-key-features">Key Features</h2>
<ul>
<li>Live <strong>webcam and microphone streaming</strong> between peers.</li>
<li>Automatic <strong>peer discovery</strong> on join.</li>
<li>Dynamic DOM updates with <strong>video elements per peer</strong>.</li>
<li>Fully <strong>serverless</strong> — runs 100% in the browser.</li>
</ul>
<h2 id="heading-use-cases">Use Cases</h2>
<ul>
<li>Decentralized video chat platforms.</li>
<li>Peer-to-peer collaborative tools with live video.</li>
<li>Privacy-first streaming apps (no cloud, no data retention).</li>
</ul>
<h2 id="heading-live-demo">Live Demo</h2>
<p><a target="_blank" href="https://estebanrfp.github.io/gdb/examples/videoStreaming.html"><strong>Real-Time Video Streaming</strong> — Join the room and start streaming your webcam video to other peers.</a></p>
<blockquote>
<p><em>GenosDB makes building decentralized, live, browser-native communication tools not only possible — but elegant.</em></p>
</blockquote>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item><item><title><![CDATA[Understanding Graph Traversal in GenosDB: Design Decisions and Developer Control]]></title><description><![CDATA[Most graph databases hide traversal logic behind query languages or automatic resolution. GenosDB takes the opposite approach: explicit edges, developer-controlled depth, and no hidden behavior.
GenosDB supports creating nodes and linking them via di...]]></description><link>https://genosdb.com/genosdb-graph-traversal-design</link><guid isPermaLink="true">https://genosdb.com/genosdb-graph-traversal-design</guid><dc:creator><![CDATA[Esteban Fuster Pozzi (estebanrfp)]]></dc:creator><pubDate>Tue, 17 Feb 2026 00:12:06 GMT</pubDate><enclosure url="https://i.imgur.com/8Km2Y7k.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Most graph databases hide traversal logic behind query languages or automatic resolution. GenosDB takes the opposite approach: explicit edges, developer-controlled depth, and no hidden behavior.</p>
<p><strong>GenosDB</strong> supports creating nodes and linking them via directed edges. Each node includes an <code>edges</code> array listing the IDs of its connected nodes.</p>
<p>However, <strong>GenosDB does not include built-in declarative graph traversal (like Cypher or Gremlin)</strong>. Instead, traversal is left to the developer, offering full control using standard JavaScript logic (iterative or recursive).</p>
<p>This design is intentional and offers:</p>
<ul>
<li>Lightweight core for fast in-browser performance.</li>
<li>Full flexibility to implement any traversal logic.</li>
<li>Seamless integration with GenosDB's P2P sync and OPFS-based local storage.</li>
</ul>
<p>Developers can build custom queries to navigate connected nodes, apply filters, and resolve complex relationships — all with fine-grained control.</p>
<hr />
<blockquote>
<p><strong>This article is part of the official documentation of GenosDB (GDB).</strong>
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by <strong>Esteban Fuster Pozzi (<a target="_blank" href="https://github.com/estebanrfp">estebanrfp</a>)</strong>.</p>
</blockquote>
<p>📄 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md">Whitepaper</a> | overview of GenosDB design and architecture</p>
<p>🛠 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md">Roadmap</a> | planned features and future updates</p>
<p>💡 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md">Examples</a> | code snippets and usage demos</p>
<p>📖 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md">Documentation</a> | full reference guide</p>
<p>🔍 <a target="_blank" href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md">API Reference</a> | detailed API methods</p>
<p>📚 <a target="_blank" href="https://github.com/estebanrfp/gdb/wiki">Wiki</a> | additional notes and guides</p>
<p>💬 <a target="_blank" href="https://github.com/estebanrfp/gdb/discussions">GitHub Discussions</a> | community questions and feedback</p>
<p>🗂 <a target="_blank" href="https://github.com/estebanrfp/gdb">Repository</a> | Minified production-ready files</p>
<p>📦 <a target="_blank" href="https://www.npmjs.com/package/genosdb">Install via npm</a> | quick setup instructions</p>
<p>🌐 <a target="_blank" href="https://estebanrfp.com/">Website</a> | <a target="_blank" href="https://github.com/estebanrfp">GitHub</a> | <a target="_blank" href="https://www.linkedin.com/in/estebanrfp/">LinkedIn</a></p>
]]></content:encoded></item></channel></rss>