Pouchdb with async storage
PouchDB, the ReactNative-only edition. A preset representing the PouchDB code that runs in ReactNative.
The
pouchdb-react-nativepreset contains the version of PouchDB that is designed for ReactNative. In particular, it ships with the AsyncStorage adapters as its default adapters. It also contains the replication, HTTP, and map/reduce plugins.
npm install pouchdb-react-native --save
npm >= 3 / node >= 6 works best, there are some known issues with npm 2
npm install [email protected] --save
import PouchDB from 'pouchdb-react-native' const db = new PouchDB('mydb')// use PouchDB db.get('4711') .then(doc => console.log(doc))
For full API documentation and guides on PouchDB, see PouchDB.com.
there is a small example app: https://github.com/stockulus/pouchdb-react-native/tree/master/example
PouchDB adapter using AsyncStorage as its data store. Designed to run in ReactNative. Its adapter name is
'asyncstorage'.
npm install pouchdb-adapter-asyncstorage --save
import PouchDB from 'pouchdb-core' PouchDB.plugin(require('pouchdb-adapter-asyncstorage').default) const db = new PouchDB('mydb', {adapter: 'asyncstorage'})// use PouchDB db.get('4711') .then(doc => console.log(doc))
On Android asyncstorage has a limitation of 6 MB per default, you might want to increase it
// MainApplication.getPackages() long size = 50L * 1024L * 1024L; // 50 MB com.facebook.react.modules.storage.ReactDatabaseSupplier.getInstance(getApplicationContext()).setMaximumSize(size);
There are still Problems with Attachments, but currently there is work on it. See (https://github.com/stockulus/pouchdb-react-native/issues/68)
git clone https://github.com/stockulus/pouchdb-react-native.git cd pouchdb-react-native git submodule init git submodule update npm install npm test cd example npm run ios