Couchbase Lite and Sync Gateway Documentation for iOS

I just started exploring Couchbase Lite and Swift development, and so some of my questions may seem basic. Generally, I find it quite difficult following some of the tutorials for Couchbase.

  1. The developer documentation seem to be missing some key tutorials such as the need to create a bridge header file, or other alternatives to using such bridge files. After some digging, I was able to find some helpful URLs that points out the need to have such file in order for XCode projects to work successfully.

  2. Secondly, do I need to add a Sync Gateway for my local iOS app to work? Why so, if all am doing at the initial phase is to test the functionality of Couchbase Lite locally in XCode? At this moment, I am not syncing with any server, so I will expect to be able to create local manager, database, then document. And be able to access the document properties without issues.

  3. Is anyone aware of a step-by-step documentation or tutorial for a complete app that is built from scratch? I think it will help beginners like myself assimilate easily to such new tool.

Thanks for your time and responses.

  1. We do need more Swift example code. We don’t have a lot of resources for this, and so far we’ve mostly been focusing on Objective-C since that’s what the majority of developers use.
    Also, in the Swift code we’ve written we’ve been assuming that developers are already familiar with Xcode and Swift. But you’re right that adding a bridging header can be a roadblock for new developers who haven’t encountered this before.

  2. No, you don’t need a Sync Gateway. One of the great things about Couchbase Lite is that it’s fully functional as a stand-alone database, and you can get a long way into app development without even thinking about sync.

  3. We have a free mobile training course online that I think does exactly this.

Thanks for the reply.

I actually did go through some of the training courses, especially the architecture, modeling, and also the iOS mobile programming(CB140i). I will revisit CB140i.

Thanks once again.

Instead of starting an app project from scratch, you might find it easier to download one of the sample app projects, rip out the app-specific code, and change the project settings like the app name and developer ID.

(A long time ago we had an Xcode project template that was basically this, but project templates are kind of an undocumented black art to create, and we didn’t keep it up to date as CBL and Xcode changed.)