Over a million developers have joined DZone.

Tutorial: From Dropbox Datatore Sync to Couchbase Mobile

DZone's Guide to

Tutorial: From Dropbox Datatore Sync to Couchbase Mobile

· Java Zone ·
Free Resource

Start coding something amazing with our library of open source Cloud code patterns. Content provided by IBM.

[This article was written by James Nocentini, Co-Founder and Chief Architect of Mobile at Couchbase.]

The Dropbox Datastore and Sync APIs were recently deprecated.

Last week, Chris Anderson wrote a blog post on why you should choose open source projects to solve this really challenging problem.

Now it’s time to code!

We will start with the Lists-ios example app demonstrating how to use the Datastore API.

Once you link the app with your Dropbox account you can sync Lists to the iOS app and Web app:

In the screencast video, we’ll take a look at what it takes to migrate it to Couchbase Mobile. I will do so using Couchbase Lite packaged in the app and Sync Gateway as the sync server:

The changes to the source code are:

  • setting up the database in the viewDidLoad method (timestamp: 4m40s, GitHub: code snippet)
  • saving documents locally when the keyboard returns (timestamp: 12m14s, GitHub: code snippet)
  • initialising the live query (timestamp: 6m, GitHub: code snippet)

There are many other features I didn’t cover in this screencast such as user authentication, configuring the sync function and installing Couchbase Server to persist those documents on the server-side.

The ToDoLite-iOS and ToDoLite-Android demo apps use Facebook Login to authenticate users and share lists. The access control rules for determining the users that have access to a given list are defined in the sync function.

One last point I didn’t cover in the screencast is how to build a web client for your application with Couchbase Mobile. That could be a simple website or a more full featured web app. We could use the Sync Gateway REST API for fetching the List and Task documents and/or use PouchDB to sync the documents to and from Sync Gateway.

Code something amazing with the IBM library of open source blockchain patterns.  Content provided by IBM.


Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}