<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Esteban Fuster Pozzi</title>
    <description>The latest articles on DEV Community by Esteban Fuster Pozzi (@estebanrfp).</description>
    <link>https://dev.to/estebanrfp</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2934186%2F79c95f8d-8996-4696-a11f-a8bfef73dd00.jpeg</url>
      <title>DEV Community: Esteban Fuster Pozzi</title>
      <link>https://dev.to/estebanrfp</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/estebanrfp"/>
    <language>en</language>
    <item>
      <title>From Babylon.js to Native WebGPU: How OVGrid Migrated to a Framework-Free Engine</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 17:43:37 +0000</pubDate>
      <link>https://dev.to/estebanrfp/from-babylonjs-to-native-webgpu-how-ovgrid-migrated-to-a-framework-free-engine-58md</link>
      <guid>https://dev.to/estebanrfp/from-babylonjs-to-native-webgpu-how-ovgrid-migrated-to-a-framework-free-engine-58md</guid>
      <description>&lt;p&gt;In 2020, OVGrid started as an experiment in building dynamic 3D virtual worlds using &lt;strong&gt;Babylon.js&lt;/strong&gt; — one of the most mature WebGL frameworks available. We explored terraforming, dynamic textures, height maps, and real-time rendering. The results were promising.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffgv1hjy98nfyefw2ua1n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffgv1hjy98nfyefw2ua1n.png" alt="OVGrid development 2020" width="800" height="564"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;OVGrid's first 3D environment tests with Babylon.js (2020)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs3xtekg0cfej2ae0849k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs3xtekg0cfej2ae0849k.png" alt="Exploring Virtual Worlds" width="800" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Early terrain generation and texture mapping experiments&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;%[&lt;a href="https://www.youtube.com/watch?v=_hfYsrHMAeI" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=_hfYsrHMAeI&lt;/a&gt;]&lt;/p&gt;

&lt;p&gt;Babylon.js gave us a solid foundation: a scene graph, a physics engine, material system, and a large community. For a prototype, it was the right choice. But as OVGrid's ambitions grew — planetary-scale terrain, atmospheric scattering, thousands of instanced objects — the framework started showing its limits.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why We Left Babylon.js
&lt;/h2&gt;

&lt;p&gt;Babylon.js is an excellent framework. It even added WebGPU support. So why leave?&lt;/p&gt;

&lt;p&gt;The answer isn't about Babylon.js being bad. It's about what happens when you need &lt;strong&gt;total control&lt;/strong&gt; over every GPU instruction.&lt;/p&gt;

&lt;h3&gt;
  
  
  Bundle Size and Dependencies
&lt;/h3&gt;

&lt;p&gt;A full Babylon.js build adds significant weight to your application. For a project that targets instant browser access with zero downloads, every kilobyte matters. OVGrid needed to be lean — a PWA that loads in seconds, even on mobile.&lt;/p&gt;

&lt;h3&gt;
  
  
  GPU Pipeline Control
&lt;/h3&gt;

&lt;p&gt;When you're writing custom atmospheric scattering shaders, cascaded shadow maps with 4 layers, and GPU-driven terrain instancing, you need direct access to the WebGPU pipeline. Working through a framework's abstraction layer means fighting against it when your needs diverge from its assumptions.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Abstraction Tax
&lt;/h3&gt;

&lt;p&gt;Every abstraction has a cost. Babylon.js manages its own render loop, its own resource lifecycle, its own state. When you need a &lt;strong&gt;Floating Origin&lt;/strong&gt; system that keeps the camera at (0,0,0) and offsets the entire world in Float64 — or when you need to reduce terrain draw calls to &lt;strong&gt;one single call per frame&lt;/strong&gt; — you need the GPU to do exactly what you tell it. No middleware.&lt;/p&gt;

&lt;h3&gt;
  
  
  Philosophy: Pure JavaScript, Zero Frameworks
&lt;/h3&gt;

&lt;p&gt;OVGrid's philosophy aligns with a broader conviction: the best code is the code you fully understand and control. No framework updates breaking your build. No dependency chains. No black boxes. Just JavaScript, WGSL shaders, and the WebGPU API.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Migration
&lt;/h2&gt;

&lt;p&gt;The transition wasn't a weekend refactor. It was a deliberate, incremental process.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Phase 1 — Custom Render Pipeline.&lt;/strong&gt; We replaced Babylon.js's render loop with a direct WebGPU pipeline. This alone gave us the ability to control exactly which compute and render passes execute per frame.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Phase 2 — Shader Rewrite.&lt;/strong&gt; Every shader was rewritten in WGSL from scratch. Atmospheric scattering, terrain rendering, vegetation instancing — all hand-tuned for OVGrid's specific needs. No generic material system overhead.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Phase 3 — Floating Origin.&lt;/strong&gt; The camera stays at (0,0,0) in GPU space. World coordinates use Float64 on the CPU, and only relative offsets are sent to the GPU. This eliminates the floating-point jitter that plagues every large-scale WebGL application.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Phase 4 — GPU-Driven Instancing.&lt;/strong&gt; Terrain chunks, vegetation, and objects are rendered with a single instanced draw call per category. The GPU decides visibility, LOD, and placement.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Phase 5 — Modular Architecture.&lt;/strong&gt; Using Bun as the bundler, we split the UI into lazy-loaded modules. Configuration panels load on first interaction. The main bundle stays minimal.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Results
&lt;/h2&gt;

&lt;p&gt;The numbers speak for themselves:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;120 FPS&lt;/strong&gt; sustained during planetary traversal — from ground level to orbit&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;One draw call&lt;/strong&gt; for all terrain chunks per frame&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sub-second&lt;/strong&gt; initial page load as a PWA&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero dependencies&lt;/strong&gt; — no node_modules, no framework updates, no breaking changes&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Full mobile support&lt;/strong&gt; — the same codebase runs on desktop and mobile browsers with WebGPU&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  When Frameworks Make Sense
&lt;/h2&gt;

&lt;p&gt;This isn't an anti-framework manifesto. Babylon.js is the right choice for many projects — games, product configurators, architectural visualization. If your project fits within a framework's model, use it.&lt;/p&gt;

&lt;p&gt;But when you're building a &lt;strong&gt;planetary-scale virtual world&lt;/strong&gt; that needs to push every boundary of what the browser can do, the framework becomes the ceiling. Removing it becomes the unlock.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;p&gt;OVGrid continues to evolve. The migration to native WebGPU was the foundation. On top of it, we're building:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://genosdb.com" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt;&lt;/strong&gt; integration for P2P identity and real-time world state&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Polygon blockchain&lt;/strong&gt; for OVG tokens and ERC-1155 metaverse assets&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ready Player Me&lt;/strong&gt; avatars for cross-platform identity&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cascaded Shadow Maps&lt;/strong&gt; with 4-layer precision up to 10km&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The browser is no longer the limitation. It's the platform.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;), creator of &lt;a href="https://genosdb.com" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt; and &lt;a href="https://ovgrid.com" rel="noopener noreferrer"&gt;OVGrid&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webgpu</category>
      <category>javascript</category>
      <category>gamedev</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Scaling the Metaverse: Building a Planetary-Scale Engine with WebGPU</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 16:37:58 +0000</pubDate>
      <link>https://dev.to/estebanrfp/scaling-the-metaverse-building-a-planetary-scale-engine-with-webgpu-58mh</link>
      <guid>https://dev.to/estebanrfp/scaling-the-metaverse-building-a-planetary-scale-engine-with-webgpu-58mh</guid>
      <description>&lt;p&gt;How OVGrid is pushing the boundaries of the mobile and desktop web with deep modularization, blockchain integration, and high-precision rendering.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F90e6aaf8q6ofc86io3wa.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F90e6aaf8q6ofc86io3wa.jpeg" alt="OVGrid WebGPU Engine" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the rapidly evolving landscape of web-based graphics, the leap from WebGL to &lt;strong&gt;WebGPU&lt;/strong&gt; isn't just an upgrade — it's a paradigm shift. Today, I'm thrilled to share a deep dive into &lt;strong&gt;OVGrid&lt;/strong&gt;, a project designed to prove that the browser can handle massive, planetary-scale environments with the fidelity and performance of native applications.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Objective: Zero-Latency Exploration
&lt;/h2&gt;

&lt;p&gt;The goal of OVGrid was simple yet ambitious: to create a seamless planetary traversal experience. Whether you are walking on the grass of a procedurally generated biome or orbiting at 500km altitude, the transition should be fluid, and the performance should remain at a solid 120 FPS.&lt;/p&gt;

&lt;p&gt;To achieve this, we've implemented an architecture that prioritizes the "Single Source of Truth" rule:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;CPU (JavaScript)&lt;/strong&gt;: Decides what exists. It handles the high-precision world coordinates (Float64), Level of Detail (LOD) logic, and physics state.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GPU (WGSL)&lt;/strong&gt;: Decides how it looks. It handles the heavy lifting of ray-tracing, atmospheric scattering, and instanced geometry.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Deep Modularization: The Phase 6 Milestone
&lt;/h2&gt;

&lt;p&gt;Our latest engineering milestone, &lt;strong&gt;Phase 6: Granular UI Lazy Loading&lt;/strong&gt;, addresses one of the most significant challenges in web apps: the initial payload.&lt;/p&gt;

&lt;p&gt;By splitting our monolithic UI into independent modules — such as &lt;code&gt;EnvironmentUI&lt;/code&gt; and &lt;code&gt;TerrainUI&lt;/code&gt; — we've achieved a state where the browser only downloads and executes the code you actually use.&lt;/p&gt;

&lt;p&gt;Using &lt;strong&gt;Bun&lt;/strong&gt; as our bundler, we've reduced the main bundle size significantly. Now, configuration panels are triggered by fast keyboard shortcuts (&lt;code&gt;T&lt;/code&gt; for Terrain, &lt;code&gt;V&lt;/code&gt; for Environment), loading their specific HTML and logic only on first interaction. This "pay-as-you-go" script execution ensures that the experience remains snappy from the first second of the page load.&lt;/p&gt;

&lt;h2&gt;
  
  
  Engineering the Planet
&lt;/h2&gt;

&lt;p&gt;At the core of the visual experience is a high-precision &lt;strong&gt;Floating Origin&lt;/strong&gt; system. By keeping the camera at (0,0,0) in the shader and passing only relative offsets, we eliminate the floating-point "jitter" that typically plagues large-scale environments.&lt;/p&gt;

&lt;p&gt;Other key technical pillars include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Cascaded Shadow Maps (CSM)&lt;/strong&gt;: 4-layer cascades that provide razor-sharp shadows for your avatar while covering terrain up to 10km away.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Nervland-style LOD Rings&lt;/strong&gt;: An adaptive subdivision system that maintains a highly detailed central block while progressively simplifying the periphery.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GPU-Driven Instancing&lt;/strong&gt;: We've reduced terrain draw calls from hundreds to &lt;strong&gt;one single call per frame&lt;/strong&gt;, maximizing the efficiency of the WebGPU pipeline.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  A Sovereign Economy
&lt;/h2&gt;

&lt;p&gt;OVGrid isn't just a technical showcase; it's a foundation for a decentralized economy. We have successfully integrated:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Polygon Blockchain&lt;/strong&gt;: Live connectivity to the Amoy testnet for &lt;strong&gt;OVG Tokens&lt;/strong&gt; and ERC-1155 metaverse assets.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Digital Identity&lt;/strong&gt;: Using &lt;strong&gt;&lt;a href="https://genosdb.com" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt;&lt;/strong&gt;, we implement WebAuthn biometrics and BIP39 mnemonic recovery, giving users true ownership of their data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Global Avatars&lt;/strong&gt;: Full integration with &lt;strong&gt;Ready Player Me&lt;/strong&gt;, allowing users to hot-swap their cross-game identities in real-time.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Future of Web Graphics
&lt;/h2&gt;

&lt;p&gt;The combination of WebGPU's raw power and modern JavaScript tools like Bun and &lt;a href="https://genosdb.com" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt; is opening doors that were previously closed to web developers. OVGrid is a testament to what is possible when you combine low-level optimization with a modular, scalable mindset.&lt;/p&gt;

&lt;p&gt;The horizon is wider than ever.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;), creator of &lt;a href="https://genosdb.com" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt; and &lt;a href="https://ovgrid.com" rel="noopener noreferrer"&gt;OVGrid&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webgpu</category>
      <category>javascript</category>
      <category>metaverse</category>
      <category>gamedev</category>
    </item>
    <item>
      <title>OVGrid is an Open Virtual Grid Metaverse</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 16:37:42 +0000</pubDate>
      <link>https://dev.to/estebanrfp/ovgrid-is-an-open-virtual-grid-metaverse-2f17</link>
      <guid>https://dev.to/estebanrfp/ovgrid-is-an-open-virtual-grid-metaverse-2f17</guid>
      <description>&lt;p&gt;The first true metaverse experience built in a decentralized and open virtual grid.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fimn7l98yxufql8dguwql.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fimn7l98yxufql8dguwql.png" alt="OVGrid" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explore the decentralized, infinitely scalable, browser-based metaverse built on WebXR and a peer-to-peer architecture.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;"Metaverse" is the reigning buzzword in tech. It promises an immersive digital future, but much of the conversation is dominated by closed, centralized ecosystems that replicate the limitations of today's internet. They demand expensive hardware, impose unilateral rules, and are ultimately owned by a single entity.&lt;/p&gt;

&lt;p&gt;But what if the future of the metaverse wasn't a walled garden, but an open, limitless universe?&lt;/p&gt;

&lt;p&gt;Introducing &lt;strong&gt;OVGrid&lt;/strong&gt;, the &lt;strong&gt;Open Virtual Grid&lt;/strong&gt; — a project that reimagines the metaverse from the ground up. It's not just another platform; it's a decentralized ecosystem designed to be truly open, scalable, and accessible to everyone.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is OVGrid and Why is it Different?
&lt;/h2&gt;

&lt;p&gt;OVGrid is a distributed metaverse where users can create and share real-time experiences. The key difference lies in its fundamental architecture, which moves away from the traditional client-server model to fully embrace decentralization.&lt;/p&gt;

&lt;p&gt;This isn't just a technical choice; it's a philosophy. We believe that users should be the true owners of their digital assets and their experiences.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Technological Engine of OVGrid
&lt;/h2&gt;

&lt;p&gt;To achieve this vision, OVGrid is built on a stack of disruptive technologies that set it apart from anything else on the market:&lt;/p&gt;

&lt;h3&gt;
  
  
  True Decentralization with GenosDB
&lt;/h3&gt;

&lt;p&gt;At the heart of OVGrid lies &lt;strong&gt;&lt;a href="https://genosdb.com" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt;&lt;/strong&gt;, an innovative graph database that enables true peer-to-peer (P2P) communication. Instead of connecting to a central server, each user (or node) connects directly with others within a parcel, forming a dynamic and resilient &lt;strong&gt;Cellular Mesh network&lt;/strong&gt;. This means lower latency, greater privacy, and no central entity with the power to pull the plug on the world.&lt;/p&gt;

&lt;h3&gt;
  
  
  Infinite Scalability: Incremental Coordinates
&lt;/h3&gt;

&lt;p&gt;Most virtual worlds have a finite map, creating artificial scarcity and limiting growth. OVGrid solves this with a revolutionary concept: &lt;strong&gt;incremental coordinates&lt;/strong&gt;. This allows for a universe with &lt;strong&gt;infinite lands&lt;/strong&gt;. The grid can expand organically without limits, offering boundless potential for creation, exploration, and the digital economy.&lt;/p&gt;

&lt;h3&gt;
  
  
  Universal Accessibility through WebXR
&lt;/h3&gt;

&lt;p&gt;The biggest barrier to entry for the metaverse? Hardware and downloads. OVGrid eliminates this obstacle by being built on &lt;strong&gt;WebXR&lt;/strong&gt;, the web standard for immersive experiences.&lt;/p&gt;

&lt;p&gt;This means you can access OVGrid:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;From any modern browser&lt;/strong&gt; on your PC or Mac.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;On standalone VR headsets&lt;/strong&gt; (like Meta Quest) without needing a PC.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;With no heavy downloads or installations&lt;/strong&gt;. Just click a link, and you're in.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This accessibility makes it inherently social and shareable.&lt;/p&gt;

&lt;h3&gt;
  
  
  Resilience and Flexibility: Offline First and PWA
&lt;/h3&gt;

&lt;p&gt;OVGrid is designed for the real world. Thanks to its &lt;strong&gt;"Offline First"&lt;/strong&gt; architecture, you can continue to interact and create even if you lose your internet connection. Changes sync automatically when you're back online. Furthermore, it operates as a &lt;strong&gt;Progressive Web App (PWA)&lt;/strong&gt;, allowing you to "install" it to your desktop or mobile device for instant access, just like a native app.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Can You Do in the Open Virtual Grid?
&lt;/h2&gt;

&lt;p&gt;OVGrid's architecture unlocks a universe of possibilities:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;True Digital Ownership:&lt;/strong&gt; Buy, sell, and lease land and assets as NFTs, secured by a distributed system.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Immersive Events and Meetings:&lt;/strong&gt; Host conferences, concerts, team meetings, or social hangouts in custom virtual spaces.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Training and Education:&lt;/strong&gt; Create simulations and interactive learning environments that transcend physical barriers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Digital Art and Galleries:&lt;/strong&gt; Exhibit and trade digital art in immersive galleries where creators have full control.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Brand Engagement:&lt;/strong&gt; Brands can build unique, interactive experiences to connect with their audiences in a completely new way.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Future is an Open Grid
&lt;/h2&gt;

&lt;p&gt;OVGrid is currently in the Pre-Alpha stage, laying the foundation for this ambitious project. We are not building another game or a closed social network. We are building the infrastructure for a truly open metaverse — a digital canvas for a global community of creators, developers, and dreamers to build the future of the internet.&lt;/p&gt;

&lt;p&gt;The metaverse shouldn't be a product you consume, but a universe you co-create. And that universe begins with an &lt;strong&gt;Open Virtual Grid&lt;/strong&gt;.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;), creator of &lt;a href="https://genosdb.com" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt; and &lt;a href="https://ovgrid.com" rel="noopener noreferrer"&gt;OVGrid&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>metaverse</category>
      <category>webxr</category>
      <category>decentralization</category>
      <category>webgpu</category>
    </item>
    <item>
      <title>Summary of Progress in 2021 Working at OVGrid</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 16:36:53 +0000</pubDate>
      <link>https://dev.to/estebanrfp/summary-of-progress-in-2021-working-at-ovgrid-1ge9</link>
      <guid>https://dev.to/estebanrfp/summary-of-progress-in-2021-working-at-ovgrid-1ge9</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff2tfs8jpg95rlg91fh2d.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff2tfs8jpg95rlg91fh2d.jpeg" alt="Testing Multiuser Land Channel" width="800" height="447"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Testing Multiuser Land Channel&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;%[&lt;a href="https://www.youtube.com/watch?v=-zHgE82w5yQ" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=-zHgE82w5yQ&lt;/a&gt;]&lt;/p&gt;

&lt;p&gt;In 2021, OVGrid made remarkable progress in developing its metaverse, enhancing the user experience and expanding available functionalities. New virtual reality features were implemented, improving interactivity and immersion. In addition, the platform's performance was optimized, and the capabilities for creating and customizing virtual environments were expanded. These achievements reflect OVGrid's commitment to innovation and leadership in the metaverse space.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;), creator of &lt;a href="https://genosdb.com" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt; and &lt;a href="https://ovgrid.com" rel="noopener noreferrer"&gt;OVGrid&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>metaverse</category>
      <category>webxr</category>
      <category>javascript</category>
      <category>gamedev</category>
    </item>
    <item>
      <title>OVGrid (Open Virtual Grid)</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 16:36:52 +0000</pubDate>
      <link>https://dev.to/estebanrfp/ovgrid-open-virtual-grid-21mn</link>
      <guid>https://dev.to/estebanrfp/ovgrid-open-virtual-grid-21mn</guid>
      <description>&lt;p&gt;An Open, Decentralized Metaverse with Infinite Lands.&lt;/p&gt;

&lt;p&gt;In recent years, metaverses have stopped being just a futuristic vision to become a key part of the digital ecosystem. Big names like Decentraland and other virtual worlds have dominated the space, but now comes OVGrid (Open Virtual Grid), a project that not only aims to compete, but to revolutionize the virtual experience.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3bkbc413r0o8tnnxvdnt.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3bkbc413r0o8tnnxvdnt.jpeg" alt="OVGrid" width="670" height="375"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;OVGrid is more than a metaverse.&lt;/strong&gt; It is an open and distributed space, created with pure JavaScript, offering infinite lands, true decentralization, and an experience optimized for WebXR directly in the browser. Below, we explore why OVGrid is a unique proposal that redefines the rules of the game.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Heart of OVGrid: A Truly Unlimited Experience
&lt;/h2&gt;

&lt;p&gt;Unlike many other metaverses that limit the extension of their digital lands, OVGrid introduces the concept of infinite lands. What does this mean? That there are no barriers or restrictions for creation, exploration, and expansion within the virtual world.&lt;/p&gt;

&lt;p&gt;In OVGrid, any user can own, build, and inhabit a space without worrying about the limitations imposed by a finite land model or speculative markets. This democratizes access and allows creativity to flow without restrictions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Decentralized Technology: The P2P Metaverse
&lt;/h2&gt;

&lt;p&gt;While other projects depend on centralized servers to function, OVGrid adopts a completely decentralized approach, based on a peer-to-peer (P2P) model. This means that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;No central servers:&lt;/strong&gt; The virtual world is not controlled by a centralized entity, but distributed among users.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Guaranteed resilience:&lt;/strong&gt; Decentralization protects the metaverse from interruptions and problems associated with centralized servers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Total freedom:&lt;/strong&gt; Users have true control over their spaces and data within the virtual world.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;OVGrid not only adopts decentralization as a philosophy, but makes it the core of its functioning.&lt;/p&gt;

&lt;h2&gt;
  
  
  WebXR Optimization: The Metaverse in Your Browser
&lt;/h2&gt;

&lt;p&gt;One of the biggest challenges of current metaverses is accessibility. Many require complex installations, specialized equipment, or dedicated applications to function. OVGrid breaks with these limitations by being designed specifically for the browser, offering an optimized experience with WebXR.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Key benefits of WebXR in OVGrid:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Total accessibility:&lt;/strong&gt; You do not need downloads or expensive hardware. A modern browser is all you need to explore OVGrid.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Exceptional performance:&lt;/strong&gt; Thanks to pure JavaScript optimization, OVGrid offers impressive graphics and minimal loading times, even on mid-range devices.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Universal compatibility:&lt;/strong&gt; It works perfectly on a wide variety of devices, from desktop computers to mobile phones and virtual reality headsets.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With OVGrid, the metaverse is literally one click away.&lt;/p&gt;

&lt;h2&gt;
  
  
  Shareable Coordinates: Connect Instantly
&lt;/h2&gt;

&lt;p&gt;Each location within OVGrid has a unique coordinate that can be easily shared as a link. By clicking, anyone can instantly join the exact position in the metaverse, without complications or complex processes.&lt;/p&gt;

&lt;p&gt;Imagine organizing a virtual meeting or showing your latest creation in OVGrid and simply sending a link for others to join. It is that easy and powerful.&lt;/p&gt;

&lt;h2&gt;
  
  
  Competing with Giants: Why OVGrid?
&lt;/h2&gt;

&lt;p&gt;In a landscape where names like Decentraland lead, OVGrid stands out for its unique and disruptive approach:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Land model:&lt;/strong&gt; Infinite lands vs. limited lands.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Decentralization:&lt;/strong&gt; 100% P2P vs. partial.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accessibility:&lt;/strong&gt; Browser-based (WebXR) vs. requires installation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Optimization:&lt;/strong&gt; Smooth on modest devices vs. higher demands.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sharing:&lt;/strong&gt; Direct links to coordinates vs. limited.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;OVGrid not only offers an alternative, but a better experience in terms of accessibility, freedom, and creative potential.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Future of the Metaverse is OVGrid
&lt;/h2&gt;

&lt;p&gt;In OVGrid, we believe that the metaverse should be a free, accessible, and infinite place. Our commitment to decentralization, technological optimization, and unlimited creativity allows us to offer a unique experience that empowers users.&lt;/p&gt;

&lt;p&gt;Whether you want to build your own world, explore new frontiers, or simply connect with others, OVGrid has a space for you.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written by Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;), creator of &lt;a href="https://genosdb.com" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt; and &lt;a href="https://ovgrid.com" rel="noopener noreferrer"&gt;OVGrid&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>webxr</category>
      <category>metaverse</category>
      <category>decentralization</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Building a P2P Collaborative Whiteboard with GenosDB in a Single HTML File</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 14:15:27 +0000</pubDate>
      <link>https://dev.to/estebanrfp/building-a-p2p-collaborative-whiteboard-with-genosdb-in-a-single-html-file-1p17</link>
      <guid>https://dev.to/estebanrfp/building-a-p2p-collaborative-whiteboard-with-genosdb-in-a-single-html-file-1p17</guid>
      <description>&lt;p&gt;Build complex real-time apps without a backend. This collaborative whiteboard runs entirely peer-to-peer, powered by the simplicity of GenosDB.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GenosBoard&lt;/strong&gt; is a feature-rich, real-time collaborative whiteboard designed to showcase the power and simplicity of &lt;a href="https://genosdb.com/building-genosdb-p2p-database" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt;. It's a complete demonstration of how to build sophisticated, decentralized applications without writing a single line of backend code. All communication, data synchronization, and state persistence happens directly between browsers in a peer-to-peer network.&lt;/p&gt;

&lt;p&gt;This isn't just a simple demo; it's a blueprint for the next generation of collaborative tools. The magic lies in GenosDB's hybrid communication model, which this application leverages perfectly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Persistent State&lt;/strong&gt; (&lt;code&gt;db.put&lt;/code&gt;, &lt;code&gt;db.map&lt;/code&gt;): Shapes created, moved, or deleted are saved to the graph database. This state is automatically synchronized across all peers and persists through page reloads, providing a reliable, shared source of truth.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ephemeral Events&lt;/strong&gt; (&lt;code&gt;db.room.channel&lt;/code&gt;): High-frequency data like live cursor positions and in-progress drag movements are sent through a separate, lightweight messaging channel. This data is never written to the database, ensuring peak performance and preventing unnecessary storage writes.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Core Code
&lt;/h2&gt;

&lt;p&gt;The entire P2P whiteboard works with just a few lines of GenosDB:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;gdb&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;https://cdn.jsdelivr.net/npm/genosdb@latest/dist/index.min.js&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;db&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nf"&gt;gdb&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;collab-board&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;rtc&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="c1"&gt;// Persistent state — shapes sync across all peers and survive reloads&lt;/span&gt;
&lt;span class="nx"&gt;db&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;put&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="na"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;shape/circle&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;x&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;y&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;150&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;#646cff&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;radius&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;35&lt;/span&gt; &lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="c1"&gt;// Reactive rendering — UI updates automatically when any peer changes data&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;unsubscribe&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;db&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;map&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="na"&gt;query&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;type&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;$regex&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;^shape&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="p"&gt;({&lt;/span&gt; &lt;span class="nx"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;value&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;action&lt;/span&gt; &lt;span class="p"&gt;})&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;action&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;added&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="nx"&gt;action&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;updated&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="nx"&gt;shapes&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;set&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;value&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;if &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;action&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;removed&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="nx"&gt;shapes&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="k"&gt;delete&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;id&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="nf"&gt;render&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="c1"&gt;// Ephemeral channels — high-frequency data without touching the database&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;cursorChannel&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;db&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;room&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;channel&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;cursor-pos&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;cursorChannel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;on&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;message&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;pos&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;peerId&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nf"&gt;drawRemoteCursor&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;peerId&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;pos&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;dragChannel&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;db&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;room&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;channel&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;shape-drag&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;dragChannel&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;on&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;message&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nf"&gt;updateShapePosition&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This hybrid model — persistent graph data combined with ephemeral real-time channels — is what makes GenosDB uniquely suited for collaborative applications. No WebSocket server, no Firebase, no backend at all.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Real-Time Collaboration:&lt;/strong&gt; Draw, drag, and delete shapes, and see changes from other users instantly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Live Cursors:&lt;/strong&gt; See where other connected users are pointing on the canvas.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Persistent State:&lt;/strong&gt; Your drawings are automatically saved in the browser and will be there when you return.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Serverless P2P Architecture:&lt;/strong&gt; No central server, no websockets to manage, no database hosting fees.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Modern &amp;amp; Responsive UI:&lt;/strong&gt; A clean, beautiful interface that's a pleasure to use.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Dependencies, Single File:&lt;/strong&gt; The entire application runs from a single HTML file, demonstrating extreme portability and simplicity.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  GenosDB Concepts Showcased
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;P2P Initialization:&lt;/strong&gt; Setting up a room with &lt;code&gt;gdb("room-name", { rtc: true })&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reactive State Syncing:&lt;/strong&gt; Using &lt;code&gt;db.map()&lt;/code&gt; to reactively render the UI from database changes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Atomic Operations:&lt;/strong&gt; Modifying the shared state with &lt;code&gt;db.put()&lt;/code&gt; and &lt;code&gt;db.remove()&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ephemeral Messaging:&lt;/strong&gt; Using &lt;code&gt;db.room.channel()&lt;/code&gt; for high-frequency, non-persistent data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hybrid Data Strategy:&lt;/strong&gt; The core architectural pattern of combining persistent and ephemeral communication for maximum efficiency.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Modern JavaScript Best Practices:&lt;/strong&gt; Leveraging top-level await, object destructuring, and efficient event handling.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Build More with GenosDB
&lt;/h2&gt;

&lt;p&gt;If this whiteboard inspires you, explore other real-time applications built with GenosDB:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://genosdb.com/genosdb-realtime-chat" rel="noopener noreferrer"&gt;Build a Realtime Chat App in 7 Lines of JavaScript&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://genosdb.com/genosdb-p2p-video-streaming" rel="noopener noreferrer"&gt;Real-Time P2P Video Streaming&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://genosdb.com/genosdb-decentralized-notes-app" rel="noopener noreferrer"&gt;Secure, Decentralized Notes App&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://genosdb.com/genosdb-kanban-board" rel="noopener noreferrer"&gt;Build a Kanban Board in Minutes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Dive into the code to see just how few lines it takes to build something this powerful. Start building your own decentralized, real-time application today with GenosDB.&lt;/p&gt;

&lt;p&gt;🔗 &lt;a href="https://estebanrfp.github.io/gdb/examples/whiteboard.html" rel="noopener noreferrer"&gt;&lt;strong&gt;Try the Live Demo →&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🔗 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/examples/whiteboard.html" rel="noopener noreferrer"&gt;&lt;strong&gt;View Source Code →&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;This article is part of the official documentation of GenosDB (GDB).&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by &lt;strong&gt;Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;)&lt;/strong&gt;. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;📄 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md" rel="noopener noreferrer"&gt;Whitepaper&lt;/a&gt; | overview of GenosDB design and architecture &lt;/p&gt;

&lt;p&gt;🛠 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md" rel="noopener noreferrer"&gt;Roadmap&lt;/a&gt; | planned features and future updates&lt;/p&gt;

&lt;p&gt;💡 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md" rel="noopener noreferrer"&gt;Examples&lt;/a&gt; | code snippets and usage demos&lt;/p&gt;

&lt;p&gt;📖 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md" rel="noopener noreferrer"&gt;Documentation&lt;/a&gt; | full reference guide&lt;/p&gt;

&lt;p&gt;🔍 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md" rel="noopener noreferrer"&gt;API Reference&lt;/a&gt; | detailed API methods&lt;/p&gt;

&lt;p&gt;📚 &lt;a href="https://github.com/estebanrfp/gdb/wiki" rel="noopener noreferrer"&gt;Wiki&lt;/a&gt; | additional notes and guides&lt;/p&gt;

&lt;p&gt;💬 &lt;a href="https://github.com/estebanrfp/gdb/discussions" rel="noopener noreferrer"&gt;GitHub Discussions&lt;/a&gt; | community questions and feedback&lt;/p&gt;

&lt;p&gt;🗂 &lt;a href="https://github.com/estebanrfp/gdb" rel="noopener noreferrer"&gt;Repository&lt;/a&gt; | Minified production-ready files&lt;/p&gt;

&lt;p&gt;📦 &lt;a href="https://www.npmjs.com/package/genosdb" rel="noopener noreferrer"&gt;Install via npm&lt;/a&gt; | quick setup instructions&lt;/p&gt;

&lt;p&gt;🌐 &lt;a href="https://estebanrfp.com/" rel="noopener noreferrer"&gt;Website&lt;/a&gt; | &lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; | &lt;a href="https://www.linkedin.com/in/estebanrfp/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>p2p</category>
      <category>webrtc</category>
      <category>collaboration</category>
    </item>
    <item>
      <title>Gun: An Ecosystem of Tools for Distributed Applications</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 01:32:45 +0000</pubDate>
      <link>https://dev.to/estebanrfp/gun-an-ecosystem-of-tools-for-distributed-applications-4eke</link>
      <guid>https://dev.to/estebanrfp/gun-an-ecosystem-of-tools-for-distributed-applications-4eke</guid>
      <description>&lt;h2&gt;
  
  
  What Is GunDB?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;GunDB&lt;/strong&gt; (also known as Gun.js) is an open-source, real-time, distributed graph database written in JavaScript. Designed with an &lt;em&gt;Offline-First&lt;/em&gt; approach and a &lt;em&gt;keep-it-simple&lt;/em&gt; philosophy, it enables developers to build encrypted, community-run, peer-to-peer applications directly in the browser.&lt;/p&gt;

&lt;p&gt;GunDB is used in production by &lt;strong&gt;Internet Archive&lt;/strong&gt; and &lt;strong&gt;HackerNoon&lt;/strong&gt;, and decentralized alternatives to platforms like Reddit, YouTube, and Wikipedia push terabytes of daily P2P traffic through the GUN network.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Real-time data synchronization&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Decentralized and distributed architecture&lt;/strong&gt; with cryptographically secure data replication&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scalability&lt;/strong&gt; without relying on central servers or a continuous internet connection&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Default servers act as backup and propagation checkpoints. Among available adapters, you can use &lt;strong&gt;Amazon S3&lt;/strong&gt;, among others.&lt;/p&gt;

&lt;p&gt;When a client-side app (browser) requests data, it merges responses with its local state using a &lt;strong&gt;CRDT&lt;/strong&gt;, then caches the result.&lt;/p&gt;

&lt;p&gt;This means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Next time, the data loads instantly — even offline.&lt;/li&gt;
&lt;li&gt;Data is replicated across all browsers that requested it.&lt;/li&gt;
&lt;li&gt;If your server goes down, data can still be recovered from other peers.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Losing important information becomes nearly impossible, since all copies would have to disappear simultaneously.&lt;/p&gt;

&lt;p&gt;%[&lt;a href="https://www.youtube.com/watch?v=b09pXG_wiVQ" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=b09pXG_wiVQ&lt;/a&gt;]&lt;/p&gt;

&lt;h2&gt;
  
  
  Core Concepts
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Real-Time synchronization across peers&lt;/li&gt;
&lt;li&gt;Distributed peer-to-peer architecture&lt;/li&gt;
&lt;li&gt;Decentralized — no single point of failure&lt;/li&gt;
&lt;li&gt;Offline-First with local state merge&lt;/li&gt;
&lt;li&gt;Graph Database with CRDT conflict resolution&lt;/li&gt;
&lt;li&gt;Radix Storage Engine (RAD)&lt;/li&gt;
&lt;li&gt;Standalone JavaScript — no external dependencies&lt;/li&gt;
&lt;li&gt;Small bundle size&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  SEA: Security, Encryption, and Authorization
&lt;/h2&gt;

&lt;p&gt;GunDB's cryptographic layer is called &lt;strong&gt;SEA&lt;/strong&gt; (Security, Encryption, Authorization). It provides:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;User authentication&lt;/strong&gt; with public/private key pairs generated via the Web Crypto API&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data signing&lt;/strong&gt; — every write operation can be cryptographically signed by its author&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data encryption&lt;/strong&gt; — end-to-end encryption between users using ECDH key exchange&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Proof of work&lt;/strong&gt; — optional computational proof for rate limiting&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;h2&gt;
  
  
  Known Limitations
&lt;/h2&gt;

&lt;p&gt;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:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;localStorage as default storage&lt;/strong&gt; — The default persistence layer uses &lt;code&gt;localStorage&lt;/code&gt;, 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.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HAM conflict resolution&lt;/strong&gt; — 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.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sync after extended disconnections&lt;/strong&gt; — 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.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Relay infrastructure&lt;/strong&gt; — 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.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Codebase complexity&lt;/strong&gt; — 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.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;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 &lt;a href="https://genosdb.com/building-genosdb-p2p-database" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt; were designed from scratch to address these specific challenges.&lt;/p&gt;

&lt;h2&gt;
  
  
  Plugins and Modules
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Users (SEA)&lt;/strong&gt; — Security, Encryption, Authorization&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Storage adapters&lt;/strong&gt; — file, LevelDB, RAD, and more&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Integration&lt;/strong&gt; — Vue.js, React, and community adapters&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Gun Recommended Links
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://gun.eco/docs" rel="noopener noreferrer"&gt;Documentation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/amark/gun" rel="noopener noreferrer"&gt;Gun on GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://gun.eco/docs/Whitepaper.pdf" rel="noopener noreferrer"&gt;Whitepaper&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://gun.eco/docs/Distributed-Matters" rel="noopener noreferrer"&gt;Distributed Matters&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Beyond GunDB: The Next Generation
&lt;/h2&gt;

&lt;p&gt;Inspired by the GunDB ecosystem, &lt;strong&gt;GenosDB&lt;/strong&gt; 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, &lt;a href="https://genosdb.com" rel="noopener noreferrer"&gt;explore GenosDB&lt;/a&gt;.&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;This article is part of the official documentation of GenosDB (GDB).&lt;/strong&gt;&lt;br&gt;
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by &lt;strong&gt;Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;)&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;📄 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md" rel="noopener noreferrer"&gt;Whitepaper&lt;/a&gt; | overview of GenosDB design and architecture&lt;/p&gt;

&lt;p&gt;🛠 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md" rel="noopener noreferrer"&gt;Roadmap&lt;/a&gt; | planned features and future updates&lt;/p&gt;

&lt;p&gt;💡 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md" rel="noopener noreferrer"&gt;Examples&lt;/a&gt; | code snippets and usage demos&lt;/p&gt;

&lt;p&gt;📖 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md" rel="noopener noreferrer"&gt;Documentation&lt;/a&gt; | full reference guide&lt;/p&gt;

&lt;p&gt;🔍 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md" rel="noopener noreferrer"&gt;API Reference&lt;/a&gt; | detailed API methods&lt;/p&gt;

&lt;p&gt;📚 &lt;a href="https://github.com/estebanrfp/gdb/wiki" rel="noopener noreferrer"&gt;Wiki&lt;/a&gt; | additional notes and guides&lt;/p&gt;

&lt;p&gt;💬 &lt;a href="https://github.com/estebanrfp/gdb/discussions" rel="noopener noreferrer"&gt;GitHub Discussions&lt;/a&gt; | community questions and feedback&lt;/p&gt;

&lt;p&gt;🗂 &lt;a href="https://github.com/estebanrfp/gdb" rel="noopener noreferrer"&gt;Repository&lt;/a&gt; | Minified production-ready files&lt;/p&gt;

&lt;p&gt;📦 &lt;a href="https://www.npmjs.com/package/genosdb" rel="noopener noreferrer"&gt;Install via npm&lt;/a&gt; | quick setup instructions&lt;/p&gt;

&lt;p&gt;🌐 &lt;a href="https://estebanrfp.com/" rel="noopener noreferrer"&gt;Website&lt;/a&gt; | &lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; | &lt;a href="https://www.linkedin.com/in/estebanrfp/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>gundb</category>
      <category>p2p</category>
      <category>database</category>
      <category>javascript</category>
    </item>
    <item>
      <title>GenosDB: Distributed Graph-Based Database</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 00:43:32 +0000</pubDate>
      <link>https://dev.to/estebanrfp/genosdb-distributed-graph-based-database-2jpe</link>
      <guid>https://dev.to/estebanrfp/genosdb-distributed-graph-based-database-2jpe</guid>
      <description>

&lt;p&gt;In modern web development, we’ve reached an inflection point. Users demand experiences that are &lt;strong&gt;fast, collaborative, and work offline&lt;/strong&gt;, but traditional architectures built on centralized servers have become a bottleneck. Synchronizing state between multiple users in real-time is complex, expensive, and fragile.&lt;strong&gt;What if we could remove the central server from the equation?&lt;/strong&gt;GenosDB isn’t just another database; it’s a fundamental answer to this challenge. It’s a &lt;strong&gt;P2P, local-first, distributed graph database&lt;/strong&gt; 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.&lt;/p&gt;

&lt;h2&gt;
  
  
  From Manual Syncing to an Automatic Dataflow
&lt;/h2&gt;

&lt;p&gt;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:- &lt;strong&gt;Real-time P2P Synchronization:&lt;/strong&gt; Using &lt;strong&gt;GenosRTC&lt;/strong&gt; (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.- &lt;strong&gt;Cross-Tab Consistency:&lt;/strong&gt; Thanks to BroadcastChannel, if a user has your application open in multiple tabs, the state remains perfectly synchronized between them with no extra effort.&lt;/p&gt;

&lt;h2&gt;
  
  
  Your Application, Always Available: Local-First Persistence
&lt;/h2&gt;

&lt;p&gt;What happens if a user loses their internet connection? With a traditional architecture, the application stops working. With GenosDB’s &lt;strong&gt;local-first&lt;/strong&gt; approach, the experience is seamless:- &lt;strong&gt;Browser Storage with OPFS:&lt;/strong&gt; GenosDB utilizes the &lt;strong&gt;Origin Private File System (OPFS)&lt;/strong&gt;, a fast and persistent storage space directly in the browser. The application always reads and writes locally, which makes it incredibly fast.- &lt;strong&gt;Native Offline Support:&lt;/strong&gt; 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 &lt;strong&gt;MessagePack&lt;/strong&gt; for serialization and &lt;strong&gt;Pako&lt;/strong&gt; compression to keep storage usage to a minimum.&lt;/p&gt;

&lt;h2&gt;
  
  
  Modeling the Real World: The Power of the Graph
&lt;/h2&gt;

&lt;p&gt;Real-world applications aren’t just simple tables and rows; they are networks of interconnected data. A user &lt;em&gt;belongs to&lt;/em&gt; a team, a task &lt;em&gt;is assigned to&lt;/em&gt; a user, a document &lt;em&gt;is linked to&lt;/em&gt; another.GenosDB embraces this reality with its &lt;strong&gt;graph data model&lt;/strong&gt;. 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.&lt;/p&gt;

&lt;h2&gt;
  
  
  Security in a Serverless World: The SM + RBAC Module
&lt;/h2&gt;

&lt;p&gt;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 &lt;strong&gt;Security Manager (SM) with Role-Based Access Control (RBAC)&lt;/strong&gt; becomes a revolutionary feature:- &lt;strong&gt;Cryptographic Identity:&lt;/strong&gt; Every user owns their identity, secured with modern cryptography through &lt;strong&gt;WebAuthn&lt;/strong&gt; (passkeys, biometrics). No more passwords.- &lt;strong&gt;Signed Operations:&lt;/strong&gt; Every write operation (put, link, remove) is digitally signed. The network doesn’t trust; it &lt;strong&gt;verifies&lt;/strong&gt;.- &lt;strong&gt;Flexible Role Hierarchy:&lt;/strong&gt; 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.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion: Start Building the Future, Today
&lt;/h2&gt;

&lt;h2&gt;
  
  
  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.
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;This article is part of the official documentation of GenosDB (GDB).&lt;/strong&gt;&lt;br&gt;
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by &lt;strong&gt;Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;)&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;📄 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md" rel="noopener noreferrer"&gt;Whitepaper&lt;/a&gt; | overview of GenosDB design and architecture&lt;/p&gt;

&lt;p&gt;🛠 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md" rel="noopener noreferrer"&gt;Roadmap&lt;/a&gt; | planned features and future updates&lt;/p&gt;

&lt;p&gt;💡 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md" rel="noopener noreferrer"&gt;Examples&lt;/a&gt; | code snippets and usage demos&lt;/p&gt;

&lt;p&gt;📖 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md" rel="noopener noreferrer"&gt;Documentation&lt;/a&gt; | full reference guide&lt;/p&gt;

&lt;p&gt;🔍 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md" rel="noopener noreferrer"&gt;API Reference&lt;/a&gt; | detailed API methods&lt;/p&gt;

&lt;p&gt;📚 &lt;a href="https://github.com/estebanrfp/gdb/wiki" rel="noopener noreferrer"&gt;Wiki&lt;/a&gt; | additional notes and guides&lt;/p&gt;

&lt;p&gt;💬 &lt;a href="https://github.com/estebanrfp/gdb/discussions" rel="noopener noreferrer"&gt;GitHub Discussions&lt;/a&gt; | community questions and feedback&lt;/p&gt;

&lt;p&gt;🗂 &lt;a href="https://github.com/estebanrfp/gdb" rel="noopener noreferrer"&gt;Repository&lt;/a&gt; | Minified production-ready files&lt;/p&gt;

&lt;p&gt;📦 &lt;a href="https://www.npmjs.com/package/genosdb" rel="noopener noreferrer"&gt;Install via npm&lt;/a&gt; | quick setup instructions&lt;/p&gt;

&lt;p&gt;🌐 &lt;a href="https://estebanrfp.com/" rel="noopener noreferrer"&gt;Website&lt;/a&gt; | &lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; | &lt;a href="https://www.linkedin.com/in/estebanrfp/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>database</category>
      <category>p2p</category>
      <category>graphdatabase</category>
      <category>decentralization</category>
    </item>
    <item>
      <title>GenosDB: Distributed Graph Database with Module Support</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 00:42:35 +0000</pubDate>
      <link>https://dev.to/estebanrfp/genosdb-distributed-graph-database-with-module-support-2gl0</link>
      <guid>https://dev.to/estebanrfp/genosdb-distributed-graph-database-with-module-support-2gl0</guid>
      <description>

&lt;h3&gt;
  
  
  Distributed Graph Databases with AI and Geospatial Query Support Modules
&lt;/h3&gt;

&lt;p&gt;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. &lt;strong&gt;GenosDB&lt;/strong&gt; 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 &lt;strong&gt;modular and extensible architecture&lt;/strong&gt;. Today, we explore how this modularity unlocks a new paradigm of possibilities by integrating artificial intelligence directly into its core.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Solid Foundations of GenosDB
&lt;/h2&gt;

&lt;p&gt;Before diving into its modular extensions, let’s recall the core features that make &lt;strong&gt;GenosDB&lt;/strong&gt; a powerful platform:- &lt;strong&gt;Real-Time P2P Synchronization&lt;/strong&gt;: Using WebRTC (via &lt;em&gt;GenosRTC internal module&lt;/em&gt;) and &lt;em&gt;BroadcastChannel&lt;/em&gt;, GenosDB allows automatic data sync across multiple peers and browser tabs without a central server.- &lt;strong&gt;Conflict-Free Consistency&lt;/strong&gt;: Powered by &lt;em&gt;Hybrid Logical Clocks (HLC)&lt;/em&gt; and a &lt;em&gt;Last-Write-Wins (LWW)&lt;/em&gt; conflict resolution strategy, ensuring data convergence even under concurrent operations.- &lt;strong&gt;Advanced Client-Side Persistence&lt;/strong&gt;: Leverages &lt;em&gt;Origin Private File System (OPFS)&lt;/em&gt; for efficient storage with fallback to &lt;em&gt;IndexedDB&lt;/em&gt;, all managed asynchronously in &lt;em&gt;Web Workers&lt;/em&gt; to avoid blocking the main thread.- &lt;strong&gt;Optimal Efficiency&lt;/strong&gt;: Uses &lt;em&gt;MessagePack&lt;/em&gt; for binary serialization and &lt;em&gt;Pako (zlib)&lt;/em&gt; for compression, minimizing bandwidth and storage usage.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Power of Modularity: A Growing Ecosystem
&lt;/h2&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. A Dynamic and Extensible Query System .map()
&lt;/h2&gt;

&lt;p&gt;The core of data interaction in GenosDB is its .map() method. It’s not just for retrieving data; it’s a live interface supporting:- &lt;strong&gt;Rich and Familiar Operators&lt;/strong&gt;: A built-in set of operators ($eq, $ne, $gt, $gte, $lt, $lte, $in, $between, $exists, $text, $like, $regex) enables precise filtering.- &lt;strong&gt;Complex Logical Queries&lt;/strong&gt;: Use of $and, $or, and $not allows building advanced logical conditions, applied recursively via createFilter.- &lt;strong&gt;Access to Nested Fields&lt;/strong&gt;: With getNestedValue, it’s possible to query and sort by deeply nested fields within node value objects (e.g., user.address.city).- &lt;strong&gt;Pagination &amp;amp; Sorting&lt;/strong&gt;: Full control over results with $limit, $after, $before, and order (asc / desc) on any field.- &lt;strong&gt;Real-Time Updates&lt;/strong&gt;: By providing a callback function, .map() becomes reactive — emitting initial, added, updated, and removed events, essential for dynamic UIs.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Smart Integration: AI-Powered Data
&lt;/h2&gt;

&lt;p&gt;GenosDB enhances data handling with natural language queries that integrate seamlessly into the query flow.&lt;/p&gt;

&lt;h3&gt;
  
  
  NL-Enhanced Data Processing
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;How it works&lt;/strong&gt;: The GenosDB instance is wrapped. When using .map(), a prompt option can be passed.&lt;strong&gt;The Process&lt;/strong&gt;:- GenosDB filters nodes using standard operators.- The value of the resulting nodes, along with the user prompt.- The AI is instructed to modify fields &lt;strong&gt;within&lt;/strong&gt; the value objects and return a JSON array with the same structure and transformed data.&lt;strong&gt;Use Cases&lt;/strong&gt;: Data enrichment, translation, summarization, content generation, classification, etc. — all within the query stream.&lt;/p&gt;

&lt;h3&gt;
  
  
  NL-Guided Query Generation
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;How it works&lt;/strong&gt;: 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., &lt;em&gt;“find active users from Spain”&lt;/em&gt;).- 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.&lt;strong&gt;Use Cases&lt;/strong&gt;: Makes queries accessible to non-technical users, enables natural language search, and simplifies flexible query UI design.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Conquering Space: Geospatial Operators
&lt;/h2&gt;

&lt;p&gt;For applications that handle location data, GenosDB provides a &lt;strong&gt;geospatial operators module&lt;/strong&gt;.&lt;strong&gt;New Available Operators&lt;/strong&gt;:- $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.&lt;strong&gt;Seamless Integration&lt;/strong&gt;: These operators can be used in the .map() query object like any standard operator, allowing geographic filters to be combined with others.&lt;strong&gt;Distance Calculation&lt;/strong&gt;: Includes an internal function for Haversine distance calculation between two geographic points.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Makes GenosDB Unique?
&lt;/h2&gt;

&lt;p&gt;The combination of these features and its modular design make GenosDB stand out:- &lt;strong&gt;Merging Worlds&lt;/strong&gt;: 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.- &lt;strong&gt;True Decentralization with Local Intelligence&lt;/strong&gt;: 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).- &lt;strong&gt;Extensibility at its Core&lt;/strong&gt;: The ease of adding new operators and processing modules (as demonstrated with AI and Geo) means GenosDB can evolve with any application’s needs.- &lt;strong&gt;Enhanced Developer Experience&lt;/strong&gt;: 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.- &lt;strong&gt;Client-Side Efficiency and Autonomy&lt;/strong&gt;: Running mostly on the client with optimized storage and async processing, it reduces server load and delivers faster, more resilient UX.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Future is Distributed, Intelligent, and Modular
&lt;/h2&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;GenosDB&lt;/strong&gt; 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 — &lt;strong&gt;GenosDB deserves your attention&lt;/strong&gt;.
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;This article is part of the official documentation of GenosDB (GDB).&lt;/strong&gt;&lt;br&gt;
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by &lt;strong&gt;Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;)&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;📄 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md" rel="noopener noreferrer"&gt;Whitepaper&lt;/a&gt; | overview of GenosDB design and architecture&lt;/p&gt;

&lt;p&gt;🛠 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md" rel="noopener noreferrer"&gt;Roadmap&lt;/a&gt; | planned features and future updates&lt;/p&gt;

&lt;p&gt;💡 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md" rel="noopener noreferrer"&gt;Examples&lt;/a&gt; | code snippets and usage demos&lt;/p&gt;

&lt;p&gt;📖 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md" rel="noopener noreferrer"&gt;Documentation&lt;/a&gt; | full reference guide&lt;/p&gt;

&lt;p&gt;🔍 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md" rel="noopener noreferrer"&gt;API Reference&lt;/a&gt; | detailed API methods&lt;/p&gt;

&lt;p&gt;📚 &lt;a href="https://github.com/estebanrfp/gdb/wiki" rel="noopener noreferrer"&gt;Wiki&lt;/a&gt; | additional notes and guides&lt;/p&gt;

&lt;p&gt;💬 &lt;a href="https://github.com/estebanrfp/gdb/discussions" rel="noopener noreferrer"&gt;GitHub Discussions&lt;/a&gt; | community questions and feedback&lt;/p&gt;

&lt;p&gt;🗂 &lt;a href="https://github.com/estebanrfp/gdb" rel="noopener noreferrer"&gt;Repository&lt;/a&gt; | Minified production-ready files&lt;/p&gt;

&lt;p&gt;📦 &lt;a href="https://www.npmjs.com/package/genosdb" rel="noopener noreferrer"&gt;Install via npm&lt;/a&gt; | quick setup instructions&lt;/p&gt;

&lt;p&gt;🌐 &lt;a href="https://estebanrfp.com/" rel="noopener noreferrer"&gt;Website&lt;/a&gt; | &lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; | &lt;a href="https://www.linkedin.com/in/estebanrfp/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>database</category>
      <category>p2p</category>
      <category>javascript</category>
      <category>modules</category>
    </item>
    <item>
      <title>Technical Features of GenosDB (GDB)</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 00:42:31 +0000</pubDate>
      <link>https://dev.to/estebanrfp/technical-features-of-genosdb-gdb-3j9p</link>
      <guid>https://dev.to/estebanrfp/technical-features-of-genosdb-gdb-3j9p</guid>
      <description>

&lt;ul&gt;
&lt;li&gt;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.
## Querying &amp;amp; Data Access
The map(...args) method is the heart of data retrieval in GenosDB, offering both static and real-time querying capabilities.- &lt;strong&gt;Powerful Filtering&lt;/strong&gt;: Supports MongoDB-style queries, sorting, and pagination ($limit, $after).- &lt;strong&gt;Real-Time Reactivity&lt;/strong&gt;: 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.- &lt;strong&gt;Event Object&lt;/strong&gt;: The callback receives ({ id, value, action, edges, timestamp }).- &lt;strong&gt;Event Actions&lt;/strong&gt;: 'initial' (for the starting dataset), 'added', 'updated', and 'removed'.- &lt;strong&gt;Recursive Graph Traversal (&lt;/strong&gt;&lt;strong&gt;$edge&lt;/strong&gt;&lt;strong&gt;)&lt;/strong&gt;: 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.
## Concurrency &amp;amp; Consistency
GenosDB is designed for distributed environments where conflicts are inevitable.- &lt;strong&gt;Hybrid Logical Clocks (HLC)&lt;/strong&gt;: 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.- &lt;strong&gt;Last-Write-Wins (LWW)&lt;/strong&gt;: 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.- &lt;strong&gt;Clock Sync&lt;/strong&gt;: The local HLC is intelligently updated upon receiving remote operations, ensuring the causal chain is maintained across the network.
## P2P Synchronization &amp;amp; Networking (GenosRTC)
When initialized with rtc: true, GenosDB enables its powerful &lt;strong&gt;GenosRTC&lt;/strong&gt; module via the db.room object for direct, real-time peer-to-peer communication.- &lt;strong&gt;Peer Lifecycle Events&lt;/strong&gt;: Automatically detect when peers connect or disconnect.- db.room.on('peer:join', (peerId) =&amp;gt; ...)- db.room.on('peer:leave', (peerId) =&amp;gt; ...)- &lt;strong&gt;Data Channels&lt;/strong&gt;: 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) =&amp;gt; ...)- &lt;strong&gt;Media Streams&lt;/strong&gt;: 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) =&amp;gt; ...)- &lt;strong&gt;Cross-Tab Sync&lt;/strong&gt;: Uses a BroadcastChannel to ensure consistency between multiple tabs of the same application within a single browser. It automatically handles recovery from tab inactivity.
## Storage &amp;amp; Persistence
GenosDB prioritizes performance and reliability for its local storage engine.- &lt;strong&gt;Primary Storage&lt;/strong&gt;: It leverages the &lt;strong&gt;Origin Private File System (OPFS)&lt;/strong&gt; 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.- &lt;strong&gt;Dedicated Web Worker&lt;/strong&gt;: 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.
## Performance &amp;amp; Efficiency&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;MessagePack&lt;/strong&gt;: Data is serialized into the compact MessagePack binary format.- &lt;strong&gt;Pako (Deflate)&lt;/strong&gt;: Serialized data is compressed using Pako, significantly reducing storage footprint and network transfer sizes.
## Security &amp;amp; Configuration&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;End-to-End Encryption&lt;/strong&gt;: By providing a password during initialization, all persisted data and P2P data channel communications are end-to-end encrypted.- &lt;strong&gt;Custom Validation&lt;/strong&gt;: Use the db.use(middleware) method to implement custom authorization logic (e.g., RBAC) by validating all incoming remote operations against your own rules.
## Feature Summary
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.
---&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;This article is part of the official documentation of GenosDB (GDB).&lt;/strong&gt;&lt;br&gt;
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by &lt;strong&gt;Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;)&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;📄 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md" rel="noopener noreferrer"&gt;Whitepaper&lt;/a&gt; | overview of GenosDB design and architecture&lt;/p&gt;

&lt;p&gt;🛠 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md" rel="noopener noreferrer"&gt;Roadmap&lt;/a&gt; | planned features and future updates&lt;/p&gt;

&lt;p&gt;💡 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md" rel="noopener noreferrer"&gt;Examples&lt;/a&gt; | code snippets and usage demos&lt;/p&gt;

&lt;p&gt;📖 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md" rel="noopener noreferrer"&gt;Documentation&lt;/a&gt; | full reference guide&lt;/p&gt;

&lt;p&gt;🔍 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md" rel="noopener noreferrer"&gt;API Reference&lt;/a&gt; | detailed API methods&lt;/p&gt;

&lt;p&gt;📚 &lt;a href="https://github.com/estebanrfp/gdb/wiki" rel="noopener noreferrer"&gt;Wiki&lt;/a&gt; | additional notes and guides&lt;/p&gt;

&lt;p&gt;💬 &lt;a href="https://github.com/estebanrfp/gdb/discussions" rel="noopener noreferrer"&gt;GitHub Discussions&lt;/a&gt; | community questions and feedback&lt;/p&gt;

&lt;p&gt;🗂 &lt;a href="https://github.com/estebanrfp/gdb" rel="noopener noreferrer"&gt;Repository&lt;/a&gt; | Minified production-ready files&lt;/p&gt;

&lt;p&gt;📦 &lt;a href="https://www.npmjs.com/package/genosdb" rel="noopener noreferrer"&gt;Install via npm&lt;/a&gt; | quick setup instructions&lt;/p&gt;

&lt;p&gt;🌐 &lt;a href="https://estebanrfp.com/" rel="noopener noreferrer"&gt;Website&lt;/a&gt; | &lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; | &lt;a href="https://www.linkedin.com/in/estebanrfp/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>database</category>
      <category>p2p</category>
      <category>javascript</category>
      <category>architecture</category>
    </item>
    <item>
      <title>Most Popular Peer-to-Peer Distributed Databases</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 00:41:17 +0000</pubDate>
      <link>https://dev.to/estebanrfp/most-popular-peer-to-peer-distributed-databases-4cj2</link>
      <guid>https://dev.to/estebanrfp/most-popular-peer-to-peer-distributed-databases-4cj2</guid>
      <description>

&lt;blockquote&gt;
&lt;p&gt;By the end of this guide, you’ll understand not only what makes a true browser-native P2P database possible, but why it matters.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: The Great Filter — Separating Protocols from Products
&lt;/h2&gt;

&lt;p&gt;The first challenge is that many technologies listed as “P2P databases” are actually &lt;strong&gt;low-level protocols or libraries&lt;/strong&gt;, not integrated database solutions. They provide the building blocks but leave the hardest parts — storage, querying, and conflict resolution — to the developer.&lt;/p&gt;

&lt;p&gt;Let’s apply our first filter: &lt;strong&gt;Is it a complete database, or a state synchronization library?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Libraries like Yjs, Automerge, and Trystero:&lt;/strong&gt; 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 &lt;strong&gt;not databases&lt;/strong&gt;. They don’t provide a persistent storage engine or a query API out of the box.&lt;/li&gt;
&lt;li&gt;You still need to build your database on top of them, often by pairing them with IndexedDB.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: The Browser-Native Filter — Node.js vs. The Web
&lt;/h2&gt;

&lt;p&gt;The next, and most critical, filter is: &lt;strong&gt;Can it run entirely within the browser, without a required Node.js runtime or backend daemon?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is where the majority of powerful distributed technologies are eliminated for our specific use case.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Technologies like Hypercore Protocol (with Hyperbee), BigchainDB, and KappaDB:&lt;/strong&gt; 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.&lt;/li&gt;
&lt;li&gt;They are not designed to be initialized and run directly and solely from a user’s browser tab.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: The Old Guard — A Look at the Pioneers
&lt;/h2&gt;

&lt;p&gt;Two names have dominated this space for years: &lt;strong&gt;GunDB&lt;/strong&gt; and &lt;strong&gt;OrbitDB&lt;/strong&gt;. They were groundbreaking and laid the foundation for what was possible. Let’s analyze them with a modern developer’s perspective.&lt;/p&gt;

&lt;h3&gt;
  
  
  GunDB: The Resilient Veteran
&lt;/h3&gt;

&lt;p&gt;GunDB is a legend. It was one of the first to offer a truly serverless, P2P graph database that runs in the browser.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Strengths:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Truly Decentralized:&lt;/strong&gt; It achieves P2P communication without mandatory servers, a remarkable feat.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resilient:&lt;/strong&gt; Its CRDT-inspired approach to conflict resolution makes it robust.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;Modern-Day Challenges:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Mature Architecture&lt;/strong&gt;: Built with earlier JavaScript conventions, the codebase may require some adaptation for developers accustomed to modern tooling and workflows.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Performance Considerations&lt;/strong&gt;: In high-throughput scenarios, its resource usage may require careful tuning, especially for performance-sensitive applications such as VR or real-time gaming.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Verdict:&lt;/strong&gt; A pioneering technology that proved the concept, but its architecture shows its age. For new projects demanding peak performance, it presents significant hurdles.&lt;/p&gt;

&lt;h3&gt;
  
  
  OrbitDB: The IPFS-Powered Log
&lt;/h3&gt;

&lt;p&gt;OrbitDB takes a different approach, building on the ambitious &lt;strong&gt;IPFS (InterPlanetary File System)&lt;/strong&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Strengths:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Immutable Data:&lt;/strong&gt; Its event-log structure is excellent for applications requiring a full history of changes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;IPFS Integration:&lt;/strong&gt; A natural fit if your application is already invested in the IPFS ecosystem.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;

&lt;strong&gt;Modern-Day Challenges:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Heavy Dependency:&lt;/strong&gt; js-ipfs, the browser implementation of IPFS, is notoriously resource-intensive, increasing bundle size and memory usage.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Browser Limitations:&lt;/strong&gt; The browser version of IPFS often relies on gateway servers or has persistence issues, compromising the “truly P2P” ideal.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Verdict:&lt;/strong&gt; 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.&lt;/p&gt;

&lt;p&gt;“These systems proved what was possible — but the web itself has evolved. Today’s browsers, APIs, and performance expectations call for a new foundation.”&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: The Paradigm Shift — Introducing GenosDB
&lt;/h2&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GenosDB&lt;/strong&gt; 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.&lt;/p&gt;

&lt;h3&gt;
  
  
  How GenosDB Evolves the Model
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Performance by Design:&lt;/strong&gt; GenosDB employs &lt;em&gt;debouncing&lt;/em&gt; 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.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Modern Persistence:&lt;/strong&gt; By using the &lt;strong&gt;Origin Private File System (OPFS)&lt;/strong&gt; for high-throughput, non-blocking storage, GenosDB achieves the performance of native databases directly in the browser, with zero external dependencies.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Efficient Communication:&lt;/strong&gt; The WebRTC-based sync layer was rewritten for predictable behavior and low overhead, avoiding redundant message floods through a debounced task pipeline.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Compact &amp;amp; Secure:&lt;/strong&gt; Data is serialized with &lt;strong&gt;MessagePack&lt;/strong&gt; and compressed with &lt;strong&gt;Pako&lt;/strong&gt;, ensuring minimal footprint over the wire. A built-in &lt;strong&gt;Security Manager (SM)&lt;/strong&gt; brings RBAC and WebAuthn support for a zero-trust environment — something older P2P databases never had to tackle directly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Developer Experience:&lt;/strong&gt; Its modular, asynchronous design makes it approachable yet powerful. The graph API supports advanced recursive traversals and reactive queries out of the box.&lt;/p&gt;

&lt;p&gt;“Here’s a quick summary of how the leading P2P databases compare in focus and strengths.”&lt;/p&gt;




&lt;h3&gt;
  
  
  GunDB
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Vibe:&lt;/strong&gt; The Resilient Pioneer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best For:&lt;/strong&gt; Simple, decentralized apps where resilience is key and performance is not critical.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Watch Out For:&lt;/strong&gt; Legacy architecture, potential performance issues, and unpredictable states in complex apps.&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  OrbitDB (with js-IPFS)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Vibe:&lt;/strong&gt; The IPFS-Native Log.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best For:&lt;/strong&gt; Applications deeply integrated with the IPFS ecosystem that need an immutable history.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Watch Out For:&lt;/strong&gt; Heavy performance overhead, large bundle size, and browser-related complexities of IPFS.&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  GenosDB
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Vibe:&lt;/strong&gt; The High-Performance Modern Successor.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best For:&lt;/strong&gt; New, demanding web applications requiring real-time collaboration, high performance, modern security, and a superior developer experience.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Key Features:&lt;/strong&gt; OPFS storage, built-in RBAC + WebAuthn, lightweight P2P layer, advanced graph database built with a Zero-Trust Security Model&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Choosing the Right P2P Database
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/amark/gun" rel="noopener noreferrer"&gt;GunDB&lt;/a&gt; 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.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md" rel="noopener noreferrer"&gt;GenosDB&lt;/a&gt; was built from the ground up to redefine data synchronization on the web through its innovative &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosrtc-api-reference.md" rel="noopener noreferrer"&gt;GenosRTC&lt;/a&gt; protocol.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;

&lt;p&gt;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.&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;This article is part of the official documentation of GenosDB (GDB).&lt;/strong&gt;&lt;br&gt;
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by &lt;strong&gt;Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;)&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;📄 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md" rel="noopener noreferrer"&gt;Whitepaper&lt;/a&gt; | overview of GenosDB design and architecture&lt;/p&gt;

&lt;p&gt;🛠 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md" rel="noopener noreferrer"&gt;Roadmap&lt;/a&gt; | planned features and future updates&lt;/p&gt;

&lt;p&gt;💡 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md" rel="noopener noreferrer"&gt;Examples&lt;/a&gt; | code snippets and usage demos&lt;/p&gt;

&lt;p&gt;📖 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md" rel="noopener noreferrer"&gt;Documentation&lt;/a&gt; | full reference guide&lt;/p&gt;

&lt;p&gt;🔍 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md" rel="noopener noreferrer"&gt;API Reference&lt;/a&gt; | detailed API methods&lt;/p&gt;

&lt;p&gt;📚 &lt;a href="https://github.com/estebanrfp/gdb/wiki" rel="noopener noreferrer"&gt;Wiki&lt;/a&gt; | additional notes and guides&lt;/p&gt;

&lt;p&gt;💬 &lt;a href="https://github.com/estebanrfp/gdb/discussions" rel="noopener noreferrer"&gt;GitHub Discussions&lt;/a&gt; | community questions and feedback&lt;/p&gt;

&lt;p&gt;🗂 &lt;a href="https://github.com/estebanrfp/gdb" rel="noopener noreferrer"&gt;Repository&lt;/a&gt; | Minified production-ready files&lt;/p&gt;

&lt;p&gt;📦 &lt;a href="https://www.npmjs.com/package/genosdb" rel="noopener noreferrer"&gt;Install via npm&lt;/a&gt; | quick setup instructions&lt;/p&gt;

&lt;p&gt;🌐 &lt;a href="https://estebanrfp.com/" rel="noopener noreferrer"&gt;Website&lt;/a&gt; | &lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; | &lt;a href="https://www.linkedin.com/in/estebanrfp/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>database</category>
      <category>p2p</category>
      <category>distributedsystems</category>
      <category>comparison</category>
    </item>
    <item>
      <title>GenosDB Represents Hierarchical and Inheritance Relationships</title>
      <dc:creator>Esteban Fuster Pozzi</dc:creator>
      <pubDate>Tue, 17 Feb 2026 00:41:11 +0000</pubDate>
      <link>https://dev.to/estebanrfp/genosdb-represents-hierarchical-and-inheritance-relationships-4438</link>
      <guid>https://dev.to/estebanrfp/genosdb-represents-hierarchical-and-inheritance-relationships-4438</guid>
      <description>

&lt;h2&gt;
  
  
  &lt;strong&gt;GenosDB&lt;/strong&gt; 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 &lt;em&gt;genos&lt;/em&gt; 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.&lt;strong&gt;Key reasons that led me to name my distributed database project “GenosDB”:&lt;/strong&gt;- &lt;strong&gt;Represents hierarchical and inheritance relationships:&lt;/strong&gt;- In graphs, connections often reflect structures such as lineages, types, or categories. &lt;em&gt;Genos&lt;/em&gt; evokes these ideas, which are natural for modeling interrelated data.- &lt;strong&gt;Evokes structure and organization:&lt;/strong&gt;- It reflects how nodes can be grouped into “families” or classes, which is useful for semantic or knowledge graphs.- &lt;strong&gt;Unique and memorable:&lt;/strong&gt;- It is not saturated in search engines or the tech ecosystem, which facilitates identity and positioning.- &lt;strong&gt;Compatible with the GDB acronym:&lt;/strong&gt;- It maintains coherence with the project’s initials without causing confusion with existing databases.
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;This article is part of the official documentation of GenosDB (GDB).&lt;/strong&gt;&lt;br&gt;
GenosDB is a distributed, modular, peer-to-peer graph database built with a Zero-Trust Security Model, created by &lt;strong&gt;Esteban Fuster Pozzi (&lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;estebanrfp&lt;/a&gt;)&lt;/strong&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;📄 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/WHITEPAPER.md" rel="noopener noreferrer"&gt;Whitepaper&lt;/a&gt; | overview of GenosDB design and architecture&lt;/p&gt;

&lt;p&gt;🛠 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/ROADMAP.md" rel="noopener noreferrer"&gt;Roadmap&lt;/a&gt; | planned features and future updates&lt;/p&gt;

&lt;p&gt;💡 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-examples.md" rel="noopener noreferrer"&gt;Examples&lt;/a&gt; | code snippets and usage demos&lt;/p&gt;

&lt;p&gt;📖 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/index.md" rel="noopener noreferrer"&gt;Documentation&lt;/a&gt; | full reference guide&lt;/p&gt;

&lt;p&gt;🔍 &lt;a href="https://github.com/estebanrfp/gdb/blob/main/docs/genosdb-api-reference.md" rel="noopener noreferrer"&gt;API Reference&lt;/a&gt; | detailed API methods&lt;/p&gt;

&lt;p&gt;📚 &lt;a href="https://github.com/estebanrfp/gdb/wiki" rel="noopener noreferrer"&gt;Wiki&lt;/a&gt; | additional notes and guides&lt;/p&gt;

&lt;p&gt;💬 &lt;a href="https://github.com/estebanrfp/gdb/discussions" rel="noopener noreferrer"&gt;GitHub Discussions&lt;/a&gt; | community questions and feedback&lt;/p&gt;

&lt;p&gt;🗂 &lt;a href="https://github.com/estebanrfp/gdb" rel="noopener noreferrer"&gt;Repository&lt;/a&gt; | Minified production-ready files&lt;/p&gt;

&lt;p&gt;📦 &lt;a href="https://www.npmjs.com/package/genosdb" rel="noopener noreferrer"&gt;Install via npm&lt;/a&gt; | quick setup instructions&lt;/p&gt;

&lt;p&gt;🌐 &lt;a href="https://estebanrfp.com/" rel="noopener noreferrer"&gt;Website&lt;/a&gt; | &lt;a href="https://github.com/estebanrfp" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; | &lt;a href="https://www.linkedin.com/in/estebanrfp/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;

</description>
      <category>database</category>
      <category>p2p</category>
      <category>graphdatabase</category>
      <category>datamodeling</category>
    </item>
  </channel>
</rss>
