Reformed Churches Locator's Application Architecture as a CouchApp?
Update: We no longer use this architecture precisely, because we are using Hoodie instead of a CouchApp?. But the end result is nearly the same as what is described below.
CaneyPUGgies has been trying out writing Reformed Churches Locator as a CouchApp? instead of as a TurboGears application, because CouchDb? provides peer-to-peer database replication as one of its core features, that's a feature Reformed Churches Locator needs, and by using CouchDB, we won't have to code that relatively complex feature ourselves.
Reformed Churches Locator's (RCL) architecture is set up like what Mikeal describes here where a Node.js changes listener handles server-side processing (currently RCL needs to go get the contents of a remote URL (a church directory page) and process its HTML):
So instead of this architecture (which is TurboGears' pattern):
RCL is like this:
This half of the application:
We're using the Python couchapp script (so all design doc code is broken out into separate files rather than being in just one file) and Backbone.js to structure the application. We'll use Mustache templates. We're using JQueryUI for widgets, and will probably use Bootstrap for a CSS framework, because Bootstrap's responsive design by default is a great feature.
http://bootswatch.com/ indicates Bootstrap might provide at least as much themability as JQueryUI.