About StepVioz
Last updated: 12 November 2026
StepVioz is a free website for learning programming and computer science step by step. It has 24 courses with 348 lessons, 732 practice problems with solutions, an online compiler for 7 languages, a code visualizer and 43 interactive tools for data structures, algorithms and other CSE topics.
It is written for beginners and students anywhere in the world: every course starts from its first idea, in plain English, and every example can be run, changed and watched one line at a time.
Why it shows every step
Reading code is not the same as seeing it run. When a program runs here, StepVioz records each step: the line that ran, every variable and its value, the call stack, the memory a pointer points to and what was printed. You can step forwards and backwards through that record, and each step is explained in words, so a loop, a recursive call or a linked list stops being a mystery.
How your code runs
Everything runs in your own browser. There is no server that runs code, so nothing you write is sent anywhere.
- Python runs on CPython 3.14 compiled to WebAssembly (Pyodide), downloaded once and kept by your browser.
- C and C++ run on StepVioz's own interpreters, which keep track of every byte, address and object.
- Java is checked like the javac compiler would check it (Java 17), then turned into JavaScript that your browser runs.
- JavaScript runs on your browser's own engine, with each step recorded.
- SQL runs on SQLite compiled to WebAssembly.
- 8086 assembly runs on StepVioz's own 8086 emulator.
How the lessons and examples are checked
- The output of the C and C++ examples is compared with what the real gcc and g++ compilers print.
- The Java engine's test programs, and its compiler error messages, are compared with a real Java Development Kit.
- The 8086 emulator is compared with a real processor on 17,600 arithmetic cases.
- Every practice problem has a model solution that passes all of its tests, including hidden ones.
- Thousands of automated tests check the interpreters, the visualizer and the lessons each time the site changes.
If you find a mistake anyway, please report it: corrections are made in public, in the project's repository.
Free, private and open
Every course, exercise and tool is free, with no account to create. There are no cookies, ads, tracking or analytics: your progress, notes and scores stay in your browser, and you can save them to a file from your dashboard. The details are in the privacy policy.
The code of StepVioz is open source under the MIT License, and the lessons are licensed under Creative Commons Attribution-ShareAlike 4.0, so teachers and students may share and adapt them. See the terms of use.
Who runs it, and how to get in touch
StepVioz is run by the StepVioz maintainers. The way to contact them, an issue in the project's public GitHub repository, will be linked here as soon as the repository is published.