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 .
LicenciaPermissive (Apache-2.0). https://github.com/apache/pouchdb (JavaScript monorepo with adapter and plugin packages)
Estado de Desarrollo 🟢 Activo
PropietarioApache 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
Órgano de GobiernoApache 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)
Año de Inicio 2010
StackJavaScript (browser and Node.js); IndexedDB and LevelDB storage adapters, with other adapters and plugins; replication over the CouchDB HTTP protocol
FinanciamientoVolunteer-maintained under the ASF; no project funding is stated
Última Investigación 29 oct 2026
Vista de topología
Esta herramienta en el centro y lo que se relaciona directamente con ella. Cada línea nombra el tipo de relación.
Almacenamiento local-first Portabilidad de datos Autoalojable
Protocolo de Datos Descentralizado Atributos
OrígenesOffline-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
Base de DatosNot a storage engine: a CouchDB-style layer over IndexedDB in browsers and LevelDB in Node.js, with additional adapters for other backends
Lenguaje 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 DatosJSON documents with revision identifiers and attachments, matching CouchDB's document model
Edición Colaborativa en VivoPartial: 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
Edición de Texto Enriquecido Not stated by the project.
Soporte MóvilYes, through web views and JavaScript runtimes (the project runs in mobile browsers and hybrid-app frameworks)
Soporte WebYes: designed to run in the browser, with IndexedDB by default
Aplicaciones NativasVia embedding in Electron, Node.js and hybrid-app frameworks; not a native library
TérminosFree and open source (Apache-2.0)
Fondos Not stated by the project.
Basado EnApache CouchDB's document model, MVCC and replication protocol; the CouchDB project defines the protocol PouchDB speaks
Arquitectura 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
Red de SuperposiciónNone: replication is between named databases over HTTP
Direccionamiento por ContenidoNo: 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
Cifrado de Extremo a Extremo (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
Tolerancia a Fallos BizantinosNo: replication trusts the peer's database and its own authorisation; no Byzantine defence is described
FirmaN/A: documents are not signed; authentication is HTTP-based at the server
PermisosServer-side: access control is delegated to CouchDB-compatible servers (database and document-level validation); PouchDB local databases have no permission model
Compatibilidad con la Web SemánticaN/A: JSON document store with no RDF layer
Contrato InteligenteN/A: no ledger or contract component
Posición en la Pila del ProtocoloApplication-layer: a JavaScript library over HTTP/1.1 replication and local browser storage
Incorporación de Activos/ValorNone: no token or value-transfer mechanism
Madurez del Protocolo / EstandarizaciónMature library (version 9) implementing the documented CouchDB replication protocol; the ASF incubation signals a formal governance transition rather than a specification change
Relaciones
Cómo se conecta esta herramienta con otras herramientas y organizaciones, según relaciones revisadas por el responsable de datos de OpenHaven. Describen cómo se conectan los proyectos, no su calidad.