Can i use CB Lite + Sync Gateway with CouchDB or Cloudant?


#1

I’d like to know if its straightforward to use Sync Gateway and Couchbase Lite with vanilla CouchDB or Cloudant. I’m also considering CouchBase but want to keep my options open, especially since my app’s data usage will be quite low.
Thanks


#2

I understand from reading around, that I can use Couchbase Lite with CouchDB using filtered replication, but that it is not avery secure method, and that I would need to write my own user management code on the server, for example in the case of a new user sending data.
In this case, I assume I would also need to provide an OAuth or other security layer?
In my case, security is not a massive issue, but I would like to have a way of users being able to share some of their documents, either publicly or with other users.

I see an advantage of Sync Gateway that it handles a lot of that stuff. However I am hesitant to go for Couchbase Server as it seems overkill for my current needs - I’m building a small prototype app with limited data needs. CouchDB seems easier to manage, and I can install and run it anywhere.


#3

Hi @adamski, you are right that you can directly communicate Couchbase Lite with CouchDB or Cloudant. However, Sync Gateway only supports Couchbase Server today. We are working on improving our CouchDB compatibility further down the road but at this time (see: https://github.com/couchbase/sync_gateway/issues?q=is%3Aopen+is%3Aissue+label%3Acouchdb), it would indeed be the burden of the developer to create a proxy layer like Sync Gateway but that would serve CouchDB.

That said, in the interim while you are prototyping I would highly recommend using the built-in toy server “Walrus” that comes with Sync Gateway. It serves as a dummy Couchbase Server that you can easily prototype apps with, supporting a handful of users. When you are ready, you can then re-direct your Sync Gateway to a Couchbase Server cluster. In this way, you can focus on just the development and syncing and not on what backend you are supporting.

You can learn a bit more about Walrus here: http://developer.couchbase.com/mobile/develop/guides/sync-gateway/deployment/during-development/index.html


#4

For what it’s worth: It’s quite easy to install and run Couchbase Server on Mac OS. It’s packaged as a double-clickable app that you can easily run from anywhere with no installation required. I have it running a lot of the time on my dev machine for testing. When you configure a bucket for test purposes just make sure to give it the minimum amount of RAM, since the default values assume your machine will be a dedicated server and will gobble up most of your memory.

I don’t have experience installing Couchbase Server on Unix but I imagine it can be done using apt_get or rpm or whatever.

But for super-light development or prototyping, Jessica is correct that Walrus is the easiest possible solution. Just don’t expect it to scale well.