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 .
LicençaPermissive (Apache-2.0). https://github.com/apache/pouchdb (JavaScript monorepo with adapter and plugin packages)
Status de Dev 🟢 Ativo
ProprietárioApache 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çaApache Software Foundation Incubator (podling PMC and mentors; champion Jan Lehnardt; graduation not yet reached)
PaísUnited States (the Apache Software Foundation is a US 501(c)(3) charity; contributors are international)
Ano de Início 2010
StackJavaScript (browser and Node.js); IndexedDB and LevelDB storage adapters, with other adapters and plugins; replication over the CouchDB HTTP protocol
FinanciamentoVolunteer-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.
Armazenamento local-first Portabilidade de dados Autoalojável
Protocolo de Dados Descentralizado Atributos
OrigensOffline-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 DadosNot a storage engine: a CouchDB-style layer over IndexedDB in browsers and LevelDB in Node.js, with additional adapters for other backends
Linguagem de ConsultaMap/reduce queries, plus Mango selector queries through the separate pouchdb-find plugin, following CouchDB (both appear in the PouchDB API reference)
Formatos de DadosJSON documents with revision identifiers and attachments, matching CouchDB's document model
Edição Colaborativa em Tempo RealPartial: 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óvelYes, through web views and JavaScript runtimes (the project runs in mobile browsers and hybrid-app frameworks)
Suporte WebYes: designed to run in the browser, with IndexedDB by default
Aplicativos NativosVia embedding in Electron, Node.js and hybrid-app frameworks; not a native library
TermosFree and open source (Apache-2.0)
Fundos Not stated by the project.
Baseado EmApache CouchDB's document model, MVCC and replication protocol; the CouchDB project defines the protocol PouchDB speaks
Arquitetura P2PReplication 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çãoNone: replication is between named databases over HTTP
Endereçamento por ConteúdoNo: documents are keyed by identifier and revision, and revisions carry hash-based ids, but content is not addressed by hash
Local-FirstLocal-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 CRDTsNo: it uses CouchDB's revision-tree conflict model rather than CRDTs
Tolerância a Falhas BizantinasNo: replication trusts the peer's database and its own authorisation; no Byzantine defence is described
AssinaturaN/A: documents are not signed; authentication is HTTP-based at the server
PermissõesServer-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ânticaN/A: JSON document store with no RDF layer
Contrato InteligenteN/A: no ledger or contract component
Posição na Pilha de ProtocoloApplication-layer: a JavaScript library over HTTP/1.1 replication and local browser storage
Incorporação de Ativo / ValorNone: no token or value-transfer mechanism
Maturidade / Padronização do ProtocoloMature 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.