If you publish research conducted using oTree, you are required by the oTree license to cite this paper. (Citation: Chen, D.L., Schonger, M., Wickens, C., 2016. oTree - An open-source platform for laboratory, online and field experiments. Journal of Behavioral and Experimental Finance, vol 9: 88-97)
Step 1: Install Python¶
oTree requires Python 3.4 or higher.
If you already have Python 3.x installed
(check by entering
pip3 -V at your command prompt),
you can skip the below section. Or, uninstall your existing version of Python,
and proceed with the below steps.
Step 1: Install Python 3.6 (for Windows users)¶
Download and install Python 3.6. (Python 3.4 and 3.5 are also OK.) Check the box to add Python to PATH:
Once setup is done, search in your Windows Start Menu for the program “PowerShell”,
open PowerShell, and enter
It will output a line that gives the version of Python at the end; this should match the version of Python you just installed:
Step 1: Install Python 3.6 (for macOS users)¶
You need to install Python 3.4 or higher. We recommend installing it with Homebrew. (However, if you already have Python 3.6 installed through Conda, that should be OK.)
- In Finder, search for and open the “Terminal” app:
- In the terminal window, type this and hit enter:
When prompted, select to install the “command line developer tools”.
- Then install Homebrew:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
PATHvariable to state that homebrew packages should be used before system packages:
echo "export PATH=/usr/local/bin:/usr/local/sbin:\$PATH" >> ~/.bash_profile
.bash_profileto ensure the changes have taken place:
brew install python3
Then test that it worked:
It will output a line that gives the version of Python at the end; this should match the version of Python you just installed.
Step 1: Install Python 3.6 (for Linux/Unix users)¶
We recommmend installing using your system’s package manager to install Python 3.6.
Twisted fails to compile, install the
python-dev package (e.g. through
More information in the Linux server setup section.
Step 2: Install oTree¶
Enter this in PowerShell (Windows) or Terminal (macOS):
pip3 install -U otree-core
If you get this Windows error about Twisted and
error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat). Get it from http://aka.ms/vcpython27
To fix this, install the Visual C++ Build Tools.
Step 3: Run oTree¶
Open PowerShell (on Windows) or Terminal (on macOS), and run:
otree startproject oTree
If it’s your first time, we recommend choosing the option to include the sample games.
The above command will create a folder named
oTree in your home directory.
(If you want, you can move the folder to another location.)
Then change to the directory you just created:
If you’ve never used a command prompt like Terminal or PowerShell, basically all you need to know is it is an alternative to your file explorer (or Finder on Mac). Instead of clicking on files and folders, you type commands to navigate folders and execute programs.
Here are some useful commands:
pwd: shows what folder you are currently in
ls: lists the files and subfolders in the current folder
cd: move to a subfolder. For example,
cd oTreetakes you to the subfolder
Reset the database:
(You might see a message about migrations; you can ignore that.)
Then run the server:
If Python crashes when you run this command, and you’re using PowerShell, try using CMD instead.
Then open your browser to http://127.0.0.1:8000/. You should see the oTree demo site.
To stop the server, enter
Control + C at your command line.
To restart the server from the command line, pressing your keyboard’s “up” arrow (this will retrieve the last command you entered),
and hit Enter.
Step 4: Install a Python editor (PyCharm)¶
You will need a text editor to write your Python code.
We recommend using PyCharm. Professional Editon is better than Community Edition because it makes Django programming easier. PyCharm Professional is free if you are a student, teacher, or professor.
Even if you normally use another text editor, we recommend at least trying PyCharm, because PyCharm’s autocompletion makes learning oTree much easier:
Once you have installed PyCharm,
go to “File -> Open...” and select the folder you created with
Then click on
File –> Settings (or
Default Settings) and navigate to
Languages & Frameworks -> Django,
check “Enable Django Support” and set your oTree folder as the Django project root,
If PyCharm displays this warning, select “Ignore requirements”:
Command line tips & tricks¶
Here are some tips to using PowerShell (for Windows users) or Terminal (for macOS users):
A few tips:
- You can retrieve the previous command you entered by pressing your keyboard’s “up” arrow
- If you get stuck running a command, you can press
Control + C.
- In PowerShell, you should right-click to paste a command.
The oTree software has two components:
- oTree-core: The engine that makes your apps run
- oTree library: the folder of sample games and other files (e.g. settings.py) that you download from here and customize to build your own project.
Upgrade oTree core¶
We recommend you do this on a weekly basis, so that you can get the latest bug fixes and features. This will also ensure that you are using a version that is consistent with the current documentation.
pip3 install -U otree-core otree resetdb
Upgrade oTree library¶
otree startproject [folder name]. This will create a folder with the specified name and
download the latest version of the library there.
If you originally installed oTree over 5 months ago,
we recommend you run the above command and move your existing apps into the new project folder,
to ensure you have the latest