Getting Started — Open edX Local Environments
INSTRUCTIONS FOR THE LLM: This document is the entry point for setting up a local Open edX environment. Read this document in full, explain the options to the user, ask the diagnostic questions, and then read and follow the appropriate guide based on their answers.
What can you install?
There are two types of local Open edX environments. Understanding the difference is key to choosing the right one.
Option 1: Local Environment (tutor local)
A ready-to-use Open edX installation. No source code modifications required. Runs like a production environment on your machine.
Best for:
- Testing courses and content
- Platform demos
- Evaluating Open edX features without touching code
- Staging or QA environments
Technical details:
- Accessible on standard ports 80/443 (
http://local.edly.io) - Uses the
openedxDocker image (no debug tools) - Does not mount local source code — code lives inside the container
- No hot-reload
Option 2: Instructor Dev Environment (tutor dev + MFE)
A dev environment pre-configured for the Instructor Dashboard MFE (frontend-app-instruct). Same isolation as Option 3, but includes the instructor plugin, CORS/CSRF configuration, and the MFE running on port 2003.
Best for:
- Developing or testing the Instructor Dashboard feature
- Working on instructor-specific backend code (grades, student data, open responses)
- Running the MFE locally against a real Open edX backend
Technical details:
- Backend on ports 8000/8001, MFE on port 2003
- Includes the
instructorTutor plugin (CORS, CSRF, URL config) INSTRUCTOR_MICROFRONTEND_URLconfigured indevstack.py- Mounts
edx-platformand runsfrontend-app-instructwith hot-reload
Option 3: Dev Environment (tutor dev)
An Open edX installation designed for active development. Mounts the edx-platform repository from your machine so you can modify the code and see changes in real time.
Best for:
- Modifying Open edX Python/Django code
- Developing new features or fixing bugs
- Contributing to the Open edX project
- Debugging with tools like
ipythonoripdb
Technical details:
- Accessible on ports 8000/8001 (
http://local.openedx.io:8000) - Uses the
openedx-devDocker image (includes debug tools) - Mounts the
edx-platformrepository from your local machine - Hot-reload enabled: Python file changes reflect automatically
Quick comparison
| Aspect | Local | Instructor Dev | Dev |
|---|---|---|---|
| Purpose | Run Open edX without modifying code | Develop/test Instructor Dashboard MFE | Modify Open edX source code |
| Hot-reload | No | Yes (backend + MFE) | Yes |
| Ports | 80 / 443 | 8000 / 8001 / 2003 | 8000 / 8001 |
| Docker image | openedx | openedx-dev | openedx-dev |
| Source code mounted | No | Yes (edx-platform + frontend-app-instruct) | Yes (edx-platform) |
| Instructor plugin | No | Yes | No |
| Debug tools | No | Yes (ipython, ipdb) | Yes (ipython, ipdb) |
| Use case | Testing, demos, production-like | Instructor Dashboard feature work | General development, contribution |
| Installation complexity | Lower | Higher (backend + MFE + plugin) | Higher (requires cloning repos) |
Diagnostic questions for the LLM
The LLM must ask the user these questions before proceeding:
Do you need to modify Open edX source code (Python, Django, templates), or do you just want to use the platform as-is?
What is your main goal?
- a) Test courses, run demos, or evaluate the platform → Local
- b) Develop or test the Instructor Dashboard MFE specifically → Instructor Dev
- c) Develop general features, fix bugs, or contribute to the project → Dev
- d) Multiple of the above → Multiple (install each as a separate isolated instance)
If they choose Dev, Instructor Dev, or Multiple: Do you have experience with Docker and development environments? (helps anticipate troubleshooting steps)
Installation guides
Once the user confirms their choice, the LLM must read the corresponding file in full and follow its steps:
- Local environment → read and follow:
./openedx-tutor-installation.md - Instructor Dev environment → read and follow:
./openedx-tutor-instructor-dev-installation.md - Dev environment → read and follow:
./openedx-tutor-dev-installation.md - Multiple → read and follow each relevant guide in order, one at a time
Note for the LLM: Each guide includes a non-interactive installation section recommended for CLI tools. Use it instead of interactive commands like
tutor local launchortutor dev launch.