PouchDB

Protocolo de Dados Descentralizado

An open-source JavaScript database inspired by Apache CouchDB, designed to run inside the browser so that web applications work as well offline as online. Applications store JSON documents in a local database; PouchDB replicates them, in either direction and continuously if wanted, with CouchDB or any server that speaks the CouchDB replication protocol, and resolves conflicts using CouchDB's revision model. It is not a self-contained storage engine but a CouchDB-style layer over other stores: by default it uses IndexedDB in the browser and LevelDB in Node.js, with other adapters available. The project is currently an Apache Software Foundation Incubator podling .

Fundação

Detalhes

Licença Permissive (Apache-2.0). https://github.com/apache/pouchdb (JavaScript monorepo with adapter and plugin packages)
Status de Dev 🟢 Ativo
Proprietário Apache Software Foundation (as an Incubator podling; the project was created by Dale Harvey and later maintained by a wider contributor group); the incubation champion named on the Incubator page is Jan Lehnardt, with two ASF mentors
Órgão de Governança Apache Software Foundation Incubator (podling PMC and mentors; champion Jan Lehnardt; graduation not yet reached)
País United States (the Apache Software Foundation is a US 501(c)(3) charity; contributors are international)
Ano de Início 2010
Stack JavaScript (browser and Node.js); IndexedDB and LevelDB storage adapters, with other adapters and plugins; replication over the CouchDB HTTP protocol
Financiamento Volunteer-maintained under the ASF; no project funding is stated
Última Investigação 29 de out. de 2026

Visão de topologia

Esta ferramenta no centro e o que se relaciona diretamente com ela. Cada linha nomeia o tipo de relação.

Visão de topologia: PouchDBEsta ferramenta no centro e o que se relaciona diretamente com ela. Cada linha nomeia o tipo de relação.PouchDBApache CouchDB (Base de, Baseado em)ApacheCouchDB

Abrir no Explorador de grafo

Capacidades

Armazenamento local-first Portabilidade de dados Autoalojável

Protocolo de Dados Descentralizado Atributos

Origens Offline-first web development: bring CouchDB's sync model into the browser so developers can build applications that keep working without a connection and sync when they reconnect
Banco de Dados Not a storage engine: a CouchDB-style layer over IndexedDB in browsers and LevelDB in Node.js, with additional adapters for other backends
Linguagem de Consulta Map/reduce queries, plus Mango selector queries through the separate pouchdb-find plugin, following CouchDB (both appear in the PouchDB API reference)
Formatos de Dados JSON documents with revision identifiers and attachments, matching CouchDB's document model
Edição Colaborativa em Tempo Real Partial: documents replicate continuously and conflicts are detected through revision trees and resolved by the application or the winning-revision rule; there is no character-level collaborative editing
Edição de Texto Rico Not stated by the project.
Suporte Móvel Yes, through web views and JavaScript runtimes (the project runs in mobile browsers and hybrid-app frameworks)
Suporte Web Yes: designed to run in the browser, with IndexedDB by default
Aplicativos Nativos Via embedding in Electron, Node.js and hybrid-app frameworks; not a native library
Termos Free and open source (Apache-2.0)
Fundos Not stated by the project.
Baseado Em Apache CouchDB's document model, MVCC and replication protocol; the CouchDB project defines the protocol PouchDB speaks
Arquitetura P2P Replication endpoints rather than a peer-to-peer network: any two PouchDB or CouchDB databases can replicate with each other over the CouchDB HTTP protocol, so a client can sync with a server or with another client that exposes the protocol; there is no discovery or relay layer
Rede de Sobreposição None: replication is between named databases over HTTP
Endereçamento por Conteúdo No: documents are keyed by identifier and revision, and revisions carry hash-based ids, but content is not addressed by hash
Local-First Local-First: the browser database is a full replica that works offline and syncs when connected
Criptografia de Ponta a Ponta (E2EE) No: PouchDB does not encrypt documents itself; encryption is left to plugins or the application
Biblioteca de CRDTs No: it uses CouchDB's revision-tree conflict model rather than CRDTs
Tolerância a Falhas Bizantinas No: replication trusts the peer's database and its own authorisation; no Byzantine defence is described
Assinatura N/A: documents are not signed; authentication is HTTP-based at the server
Permissões Server-side: access control is delegated to CouchDB-compatible servers (database and document-level validation); PouchDB local databases have no permission model
Compatibilidade com a Web Semântica N/A: JSON document store with no RDF layer
Contrato Inteligente N/A: no ledger or contract component
Posição na Pilha de Protocolo Application-layer: a JavaScript library over HTTP/1.1 replication and local browser storage
Incorporação de Ativo / Valor None: no token or value-transfer mechanism
Maturidade / Padronização do Protocolo Mature library (version 9) implementing the documented CouchDB replication protocol; the ASF incubation signals a formal governance transition rather than a specification change

Relacionamentos

Como esta ferramenta se conecta a outras ferramentas e organizações, a partir de relacionamentos revisados pelo responsável pelos dados do OpenHaven. Descrevem como os projetos se conectam, não a qualidade deles.

Baseado em