Digitize your EGMA and EGRA data collection with Tangerine. Create your Assessments online, conduct them offline with the Tangerine Android App. All results you collect can be exported as a spreadsheet. Tangerine has been used by over 30 organizations to conduct over 1 million assessments and surveys in over 50 countries and in 100 languages.
We recommend using AWS for hosting have documented detailed instructions for AWS. Below are general instructions for installing on any machine.
# Get the software. git clone https://github.com/Tangerine-Community/Tangerine.git cd Tangerine git checkout <version tag> # Create config.sh and edit to match your desired settings. Make sure to set `TANGERINE_VERSION` to the same as what `<version tag>` in the prior commands. cp config.defaults.sh config.sh nano config.sh # Start the software. ./start.sh
If your server restarts or the container stops, you can later run the
./start.sh script in the Tangerine-server folder.
To use SSL, put an SSL enabled Reverse Proxy in front of Tangerine and set the
T_PROTOCOL variable in
https before running
start.sh. At RTI we use AWS's Elastic Load Balancer in front of Tangerine because it automatically renews and cycles SSL certificates for us. How to set this up is detailed in our instructions for AWS. If your Tangerine install is on a Digital Ocean Droplet, you can use their Load Balancers and configure them for SSL. See How To Configure SSL Termination on DigitalOcean Load Balancers.
Now visit your Tangerine-server installation at the IP address or hostname of your installation. In this configuration, the browser talks to the Load Balancer securely on Port 443 while the load balancer communicates with Tangerine Container on port 80 on a private network.
Monitor https://github.com/Tangerine-Community/Tangerine/releases for new stable releases. Note that a "Pre-release" may not be stable, might corrupt your data, and there will not be an upgrade path for you.
SSH into your server and run the following commands.
cd Tangerine git fetch origin git checkout <version tag> # Set up config.sh again. cp config.sh config.sh_backup cp config.defaults.sh config.sh # Migrate settings from config backup to config.sh. vim -O config.sh config.sh_backup rm config.sh_backup ./start.sh # Check for upgrade scripts that need to be run. Note that you can only run scripts that end in .sh and you need to # run every script between your prior version to version you have upgraded to. Also always check the release notes for # any special instructions docker exec -it tangerine-container ls /tangerine-server/upgrades # Run an upgrade script. docker exec -it tangerine-container /tangerine-server/v2.0.0.sh
Note that if you have created groups already and you are now updating
config.sh, you will manually need to edit the
settings docs in each group. See issue #114 for the status of this.
Check out the Tangerine Technical Documentation site on Github Pages. Want to contribute documentation? Fork the Tangerine repository, commit to the
gh-pages branch and send us a pull request.