Simple roll-your-own ODK server for receiving ODK Collect form submissions
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Simple ODK Server

This is a simple roll-your-own server for receiving form submissions from ODK Collect and storing them in a Github repo, a Github Gist, or a Firebase database (Firebase is still experimental and reading a blank forms does not work).

This is currently experimental, needs more docs, and will possibly break


  1. Requires node and git

  2. Clone this repo git clone

  3. npm install

  4. You must set the environment variable FORM_STORE to one of:

    • github - you also need to set GITHUB_USER and GITHUB_REPO
    • gist - also set GIST_ID to the id of the gist you want to submit to
    • firebase - also set FIREBASE_APP to the firebase app name


    export FORM_STORE=github
    export GITHUB_USER=myrepoowner
    export GITHUB_REPO=mygithubreponame
  5. npm start

That should be it, check by visiting http://localhost:8080/ and you should see OK

Deploy on Heroku

Just click the button below and fill in the required environment variables (see above)