Hi Glen,
PeerPouch is a bit out of date – it's only compatible with PouchDB 1.x, whereas the latest is 5.x.
PeerPouch is based on WebRTC, which is the only way to do peer-to-peer transfers in the browser. The reason that "you actually need to start with a centralized database" is because WebRTC is designed in such a way that you need a centralized server in order for the two peers to first find each other. Then the two peers can communicate in a truly p2p fashion.
If you're interested in this, I suggest checking out WebRTC itself (or maybe some helper library like
http://peerjs.com/). Using that, you can use PouchDB and pouchdb-replication-stream and pouchdb-load plugins to:
1. Create a PouchDB in peer 1
2. Dump (e.g. using pouchdb-replication-stream or pouchdb-dump) to a string
3. Transfer that string via WebRTC
4. Load it in peer 2's PouchDB using the pouchdb-load plugin
Hope that helps!
- Nolan