Make room
for a little wonder.
Kids Code is a free place to explore programming through small, hands-on experiments. The aim is curiosity, confidence, and the joy of making something.
Choose a comfortable starting point
The robot adventures introduce sequences, repetition, and debugging without typing. They are designed with roughly ages 7–10 in mind. Pixel Studio introduces coordinates and patterns through making art. Confident readers and typists, often ages 10 and up, can follow the Python trail. These are flexible starting points, not entry requirements.
A small learning routine
- Predict: ask “What do you think will happen?” before pressing Run.
- Try: give the child time to test an idea independently.
- Notice: ask “What changed? What surprised you?”
- Remix: change one instruction, number, or word and try again.
A lesson can take 5–12 minutes, but nobody needs to finish on a schedule. Encourage breaks, stretch time, and explaining an idea away from the screen.
Programming foundations with blocks
The 20-mission visual path teaches primitive values (numbers, text, booleans, and absence), variables, arithmetic, comparisons, if/else, boolean logic, counted and conditional loops, nested loops, lists, indexing, iteration, records/dictionaries, stacks, queues, functions, input/output, and debugging. Each task runs the actual connected blocks, and decision tasks check several input scenarios.
The editor uses Blockly with our own block definitions and teaching activities. It is not an embedded Scratch site. Programs run through a limited interpreter with a step budget, collection and output limits, a time limit, and a Stop control. No user-supplied JavaScript is evaluated. Projects can be saved on the device, downloaded, and reopened. Importing never runs a project automatically.
The block canvas supports pointer and touch editing and works best on a computer or larger tablet. Use the robot activity for a simpler keyboard-controlled start. Blocks can be translated into Python as a next step; the two environments have some different type rules. Recipe blocks share variables and do not take parameters, while the Python lessons introduce parameters and return values.
What children can learn
The activities cover sequences, loops, decomposition, debugging, coordinates, and patterns. The ten Python lessons introduce output, variables, arithmetic, input, conditions, loops, lists, functions, dictionaries, and a guessing game. Four project starters invite open-ended practice.
Python goals compare printed output with the stated target. This gives immediate feedback, but it is not a comprehensive assessment of understanding. Ask children to explain their code or change the input to test their reasoning.
Data and privacy
Google Analytics measures visits and how the site is used. No accounts, advertising, chat, or public profiles are included. Completed activities, Python drafts, pixel art, and block projects are stored locally in the browser when storage is available. They do not sync across devices. Clear browser site data to remove all saved work, or use the progress reset on the Explore page to clear completed activities only.
The site loads Google Analytics and fonts from Google Fonts. Starting Python downloads its runtime from the jsDelivr CDN. Those services and the hosting provider receive ordinary connection information, such as IP addresses. The site does not send editor contents to a code-execution server. Encourage children to use fictional names and avoid entering personal information.
How the Python playground works
Real Python runs on the device using Pyodide. The first run requires an internet connection to load the engine. A background worker keeps the interface responsive; Stop terminates it. Runs have a 10-second execution limit and a 30,000-character output limit.
The editor supports text output and Python standard-library programs. It does not provide desktop windows, turtle graphics, package installation controls, or a live terminal. For input(), enter answers in the Program input box before running. Use trusted learning examples: Python can access browser networking APIs, so this tool is not a security sandbox for arbitrary code found online.
Keyboard and accessibility
Activities use labeled buttons and native controls. Robot commands work by tap or keyboard, without dragging. Pixel Studio supports arrow-key navigation and Enter or Space to paint. Motion is reduced when requested by device settings. The editor leaves Tab available for keyboard navigation; use its Indent button to insert four spaces.
An idea for the next adventure?
Have a suggestion, found a mistake, or spotted something that could work better? Email info@kidscode.dev. Include the page link and a short description so we can take a closer look.
Start with an experiment
You do not need all the answers. “Let’s find out together” is a perfectly good place to begin.