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.
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. Set TANGERINE_VERSION to the same <version tag>. vim -O config.sh config.sh_backup rm config.sh_backup ./start.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.
Development method 1: Use develop.sh to map code directories into a Docker Container
Prereq: Install Docker.
- For Linux: https://docs.docker.com/engine/installation/
- For Macs: Docker for Mac. Unless you are having performance problems, then Docker Toolbox which you can use to create a Docker Machine in a Virtual Machine.
Clone the repository.
git clone https://github.com/Tangerine-Community/Tangerine.git cd Tangerine
If you are using a text editor or IDE such as Webstorm on your host machine, your
file modifications may not trigger the ng build process on the docker instance.
If you use Idea Webstorm, please try turning 'Safe write' option ( Settings | Appearance & Behavior | System Settings | Use "safe write" (save changes to temporary file first)) off
Run these commands to start get docker working inside your shell:
docker-machine start eval $(docker-machine env default) cd source/Tangerine-Community/Tangerine ./develop.sh
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.