A self-hosted, browser-based IDE for learning FRC robot programming. Students get a hosted VS Code editor, isolated Docker workspaces, one-click robot simulation, live AdvantageScope telemetry, and PathPlanner — all with no local setup. Lesson modules guide beginners, while GitHub team import supports real robot projects.
Try CodeRunner locally in demo mode — no OAuth, no allowlist, no configuration required. Just Docker:
git clone https://github.com/mathewdunne/CodeRunner coderunner
cd coderunner
CODERUNNER_DEMO_MODE=1 docker compose upOpen http://localhost:4000. You land directly in the IDE as a single seeded admin user.
Prerequisites: Docker with the Compose plugin (running). No Bun, Flutter, submodules, or emscripten needed — the control image ships the web shell, AdvantageScope, and PathPlanner assets prebuilt. On macOS and native Windows there is nothing to configure; on Linux and WSL2 (Docker Desktop's WSL2 integration included) the socket belongs to the docker group, so prefix the command with CODERUNNER_DOCKER_GID=$(stat -c '%g' /var/run/docker.sock) or set that variable in .env.
Warning: Demo mode bypasses authentication entirely. Every visitor shares the same admin user and workspace. Do not expose a demo instance to the public internet. See docs/quick-start.md for full details and next steps.
Documentation lives in docs/ and is built with Docusaurus from website/. To browse locally:
cd website && bun install && bun run startOr from the repo root:
bun run docs:devMain sections:
- Quick Start — demo mode walkthrough
- Using CodeRunner — student guide: projects, running a simulation, PathPlanner
- Architecture — how the system is put together
- Lessons & Modules — lesson catalog, module authoring, GitHub import
- Deploying — running a real multi-user instance
- Day-to-Day Operations — managing a live deployment
- Development Setup — running the app locally for development
- Configuration Reference — all environment variables
Start the control plane and web shell in parallel:
bun run dev:control # Bun control plane on :4000 with --watch
bun run dev:web # Vite web shell on :5173 with HMRRun the full verification suite before submitting changes:
bun run verify # typecheck + Bun tests + Vitest + PlaywrightSee docs/development/dev-servers.md for the full development workflow.
CodeRunner is released under the MIT License.
It redistributes third-party software that remains under its own terms — most notably AdvantageScope (BSD-3-Clause, modified), PathPlanner (MIT, modified), VSCodium (MIT), and WPILib (BSD-3-Clause). Required notices are in THIRD_PARTY_NOTICES.md and ship inside both images at /usr/share/coderunner/. None of those projects endorse or are affiliated with CodeRunner.