All,
After researching the use of Sync Gateway and Couchbase Server as a platform for web and mobile applications, I would like to make sure that I understand the development model. I will list my assumptions(insert joke here:))/questions below, in the hopes that I'm thinking about things correctly.
1. All new applications that use offline/online syncing should use the Sync Gateway Rest API exclusively to avoid the duplicate work created by shadowing a bucket?
1(A). Will the native drivers be updated to implement the necessary components for syncing, allowing native access to the data without the need of the Sync Gateway?
1(B). Alternatively, will Couchbase server be modified so that it handles the syncing components without requiring the Sync Gateway?
2. The Sync Gateway doesn't currently have CORS support. Is this support planned, if so, what is the timeline?
2(A). Instead of using the Sync Gateway directly from browser based apps(Angualrjs,ETC.) should you use a server based "Web Framework" that utilizes the Sync Gateway APIs for traditional Browser facing UI's? In addition to the traditional web app architecture, you would also develop native mobile apps with CB light that simultaneously utilize the Sync Gateway API.
Architecture:
+ Desktop/Mobile Browsers ---> "Client+Server Web Framework of Choice" -----> Sync Gateway ----> CouchBase Server
+ And a Native Device App + CB Light -----> Sync Gateway -----> Couchbase Server
3. Does the use of the Sync Gateway limit the full functionality of Couchbase Server?
4. Can PouchDB, and Apache CouchDB be used safely with the Sync Gateway?
5. When using the Sync Gateway, are there any special considerations to make when modeling your documents?
- Thanks!
-- Nick