wysiwyg xforms editor for the odk subset
This particular branch of odkbuild is for the offline version of the application. It’s much simpler since there’s no infrastructure required to store user authentication or communicate with a server, and it’s much better for users in sparsely-connected regions since we can just interact with files locally.
Please see the releases page to download the latest release of the application.
The app is built using a modified version of the client-side code in ODK Build, and runs on top of node-webkit (0.18.x+). There is a Makefile
present that will build a correct app.nw
under the build/
directory — run that package using node-webkit to test out the application. There is also a shortcut target make go
that will spawn the node-webkit process with a fresh build of your application if you are on OS X.
To package and distribute the app, please follow the instructions on the node-webkit wiki .
The following things differ from the mainline branch:
- All server-side source files are removed for clarity.
- The main app markup at
views/index.erb
has been rewritten to a static file atpublic/index.html
. The script tags have been hardcoded in rather than being loaded fromassets.yml
. The image preloader has been removed. auth.js
blindly reports a present user, and approves all authed actions.application.js
now hides the loading screen immediately, and activates the webkit dev inspector when one presses~~
.file.js
is a new set of code that manages file saving and loading, including XML export.menu.js
is a new set of code that manages the application menu.remote.js
is a new set of code that manages remote networking (primarily Aggregate Upload).override.css
is a new stylesheet that adapts the existing styles for native ui use.
In addition, the following automatic source transforms are performed on compilation:
styles.css
automatically has all absolute resource references renamed to relative references.- The
images/
directory is cloned into the stylesheets directory to work with the above.