Every feature exists because a beginner needs it.
No install, no admin rights, no set-up. Open the URL and start typing — works on your laptop, tablet or phone.
Single-step through every expression. Errors stop being mysterious.
Drop codeBoot into a textbook, a slide deck, a course site. Every exercise becomes interactive — students don't switch tabs.
Built-in support for Turtle graphics, pixel drawing interface, sound generation, web programming, charting, tabular data and more.
Easy to use documentation with executable examples is provided.
Uses a subset of the Python programming language specifically for teaching.
“Learning to program shouldn't start with five pages of installation instructions.”
We believe the first hour of an introductory programming class is precious. It should be spent understanding the subject matter, not configuring a system. codeBoot was built so that no student ever loses their first session — or their tenth.
— The codeBoot team
codeBoot runs the program step-by-step, highlighting each step as it goes — students see exactly how the code executes, recursion and all.
↗ Follow the highlight; press to run, to advance one step, or to pause execution while it runs.
A turtle you steer and a pixel screen you address point by point. The drawing renders live in a window beside your code — no imports, no canvas boilerplate.
Hand chart() a table of values and codeBoot plots it — bars, lines, scatter. It's how students see an algorithm's behavior, not just its final output.
Drop a .csv into codeBoot and it opens in a familiar spreadsheet grid — rows, columns, cells. Read it straight from Python: the console below opens villes.csv and totals the cities' population.
codeBoot isn't only for exercises. Because Python talks to the browser through a JS bridge — the DOM, any JS library, even one imported from the web — you can write real little web apps right in the editor. We call them microapps because sharing one is a single click: codeBoot packs the whole thing into a URL.
A few lines of Python build the markup and wire the button. The output renders in codeBoot's own HTML window — the “playground” — right next to the code that produced it.
The same program can reach any element in the host document. Here, codeBoot wires the page's die and button — which live outside the editor — to a Python function. Click the button below and codeBoot's interpreter handles the event, then updates the page.
codeBoot leaves out features you'd expect from a professional IDE — on purpose. A little friction is pedagogical: it forces students to build the mental models that shortcuts would otherwise hide.
No popups finishing your function names. Students recall the syntax themselves — that repetition is how it sticks.
No rename-everywhere, no automatic extraction. Restructuring code by hand is how you learn how it actually fits together.
No Git, no branches, no history to manage. Attention stays on the program in front of you, not the tooling. (A lightweight Git shim is on our roadmap.)
No list comprehensions, decorators, or generators. One clear way to do things — students learn the fundamentals before the shortcuts.
The friction isn't an oversight. It's the effort that turns “it works” into “I understand why it works.”
Send us an email! we're always happy to showcase codeBoot, talk through real use cases, and help you integrate it into your classroom.