• Stars
    star
    116
  • Rank 294,614 (Top 6 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 7 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

PouchDB adapter using ReactNative SQLite as its backing store

pouchdb-adapter-react-native-sqlite

PouchDB adapter using ReactNative SQLite as its backing store.

Why?

SQLite storage performs much faster than AsyncStorage, especially with secondary index. Here is benchmark results:

1) allDocs speed min max mean
AsyncStorage 72ms 94ms 77ms
SQLite 27ms 39ms 28ms
2) query speed min max mean
AsyncStorage 1,075ms 1,117ms 1,092ms
SQLite 33ms 39ms 35ms
  • Device: iPhone 6s
  • Documents: 434
  • Update seq: 453
  • Iterations: 100
  • Used options: { include_docs: true }

On Simulator

  • Device: iPad Pro 9.7" (Simulator) - iOS 10.3.2
  • Documents: 5000
3) bulkDocs speed total mean
AsyncStorage 25.821ms 5.16ms
SQLite 22.213ms 4.44ms
4) allDocs speed total mean
AsyncStorage 189,379ms 37.87ms
SQLite 30,527ms 6.10ms
  • allDocs options: { include_docs: true, attachments: true }
  • Using this test script

How to use it

Check out the craftzdog/pouchdb-react-native repository.

Changelog

  • 3.0.1
    • Fix dependency and import
  • 3.0.0
  • 2.0.0
    • Upgrade pouchdb-adapter-websql-core to 7.0.0
  • 1.0.3
    • Remove pouchdb-utils dependency
  • 1.0.2
    • Upgrade pouchdb-util & pouchdb-adapter-websql-core to 6.2.0
    • Update benchmark result
  • 1.0.1
    • Remove unnecessary console output
  • 1.0.0
    • Initial release

More Repositories

1

dotfiles-public

My personal dotfiles
Lua
5,967
star
2

craftzdog-homepage

My homepage
JavaScript
2,220
star
3

chat-bubbles-for-yt

Real-time recording for chat bubbles
TypeScript
658
star
4

solarized-osaka.nvim

🏯 A clean, dark Neovim theme written in Lua, with support for lsp, treesitter and lots of plugins.
Lua
506
star
5

react-native-animated-todo

Animated ToDo app built with React Native and Reanimated v2
TypeScript
436
star
6

react-native-sqlite-2

SQLite3 Native Plugin for React Native for iOS, Android, Windows and macOS.
TypeScript
369
star
7

react-native-quick-base64

A fast base64 module for React Native
TypeScript
346
star
8

electron-markdown-editor-tutorial

Electron Markdown editor tutorial
JavaScript
293
star
9

craftzdog-uses

A curated list of the tech I use, built with Astro and Tailwind CSS
Astro
243
star
10

react-native-aes-gcm-crypto

AES-GCM encryption/decryption for React Native
Java
238
star
11

inkdrop-ui-mockup-react-native

A mockup for Inkdrop mobile inspired by Gmail
TypeScript
236
star
12

react-native-checkbox-reanimated

Animated checkbox built with Reanimated v2
TypeScript
161
star
13

link-in-bio

Link in bio page for my Instagram profile
HTML
156
star
14

vlog-translator

A Personal Tool for Transcribing & Translating My Vlogs into Japanese
TypeScript
142
star
15

ghibli-style-shader

Ghibli-styled Shader Example for Three.js
JavaScript
138
star
16

react-native-quick-md5

Fast C++ implementation with JSI binding of MD5 for React Native
C++
105
star
17

caffe-ios-sample

An example of XCode project using Caffe: a fast open framework for deep learning
Objective-C++
98
star
18

ZenPlayer-for-iOS

ZenPlayer written with objective-c
Objective-C
91
star
19

hyper-holoplay

Holoplay integration for Hyper
JavaScript
81
star
20

cm6-themes

Themes for CodeMirror 6
TypeScript
74
star
21

send-email-lambda

Simple email sender running on Lambda
JavaScript
69
star
22

voxel-dog

A cute 3D dog rendered with three.js
TypeScript
69
star
23

react-native-three-column-layout

Three-column layout with animation support for tablet displays
TypeScript
47
star
24

react-native-quick-websql

Fast WebSQL-compatible SQLite driver for React Native
TypeScript
43
star
25

NRBlurryStepOutAnimatedTransitioning

tweetbot like modal view transitioning
Objective-C
42
star
26

react-native-skeuomorphism-ui-example

Neo-skeuomorphism style UI Example for React Native
JavaScript
37
star
27

p5-wave-visualization

p5 sketch visualizing the sound of waves of the sea recorded at Yuigahama in Kamakura, which is processed with FFT.
JavaScript
35
star
28

react-native-japanese-tokenizer

Async Japanese Tokenizer Native Plugin for React Native for iOS and Android
Java
34
star
29

react-codemirror-runmode

Syntax highlighting for react, utilizing CodeMirror's parser
JavaScript
25
star
30

presentation-themes

Presentation themes based on popular syntax themes
18
star
31

gatsby-starter-ionic

A Gatsby starter with Ionic added on top
CSS
17
star
32

atom-react-app

An empty React app based on Atom Editor
JavaScript
16
star
33

pouchdb-react-native-demo

A working demo for PouchDB on React Native with SQLite3 storage
JavaScript
15
star
34

extract-main-text-node

ExtractContent for node.js
JavaScript
15
star
35

react-native-native-ui-component-boilerplate

My boilerplate for building a native UI component for React Native
Java
13
star
36

remark-react-codemirror

Syntax highlighting for remark-react through CodeMirror
JavaScript
11
star
37

anavi-phat-sensors-ui

Web interface for ANAVI pHAT & CO2 sensors
CSS
10
star
38

remark-strip-html

Remove html formatting from Markdown
JavaScript
10
star
39

react-native-sqlite-2-demo

React Native SQLite 2 Demo
JavaScript
5
star
40

rn-tamagui-web-test

TypeScript
4
star
41

anavi-sensors-api

An API server to retrieve ANAVI sensor data from my Raspberry Pi
JavaScript
3
star
42

lunr-language-jp

A Japanese tokenizer and stopwords for Lunr JavaScript library
JavaScript
3
star
43

frosted-top-bar-example

an example of iOS like frosted blurry-styled top-bar on the web
HTML
3
star
44

raspcon

A remote controller server for my room 🕹
JavaScript
2
star
45

twit-promise

A wrapper for the Twit module that its get/post methods return the native promise
JavaScript
2
star
46

NRJSONHelpers

Handy categories for encoding/decoding JSON in Objective-C
Objective-C
1
star
47

codemirror.next-markdown

Markdown test
1
star
48

electron-acrylic-window-drag-issue-reproduction

JavaScript
1
star
49

react-native-pouchdb-md5

PouchDB utilities for calculating MD5 checksums for React Native
Java
1
star
50

inkdrop-style-override

Inkdrop plugin. Override font families in preview, max body width, and other things in the future.
JavaScript
1
star