Udon Thani International SchoolCodeQuestPlay · Think · CodeStaff

PROJECTS · 28 IDEAS TO BUILD

Make something real.

Example projects for every age and every area. Pick one that excites you, or use one as a starting point for your own idea. The level shows where most pupils start, but if a project looks fun, have a go.

Levels: Explorers 6–9Builders 9–12Challengers 12–15Seniors 15–18 "+" means "and older".

Coding

Software & algorithms in the Python lab.

CodingExplorers+

Maze designer

Design a maze on squared paper, write the program that solves it, then swap with a partner and see if their program works on your maze.

You'll use
Paper, then Practice Coding
You'll learn
Sequencing, debugging, planning

CodingBuilders+

Pattern printer

Use loops and print() to draw stairs, pyramids and checkerboards out of text characters. Can you make one loop draw any size?

You'll use
Python lab free coding
You'll learn
for loops, nested loops, parameters

CodingChallengers+

One solver for every maze

Write a single Python program, using sensors such as can_move_left(), that reaches the goal on every mission without being changed.

You'll use
Python lab and sensors
You'll learn
while, if / else, algorithms

CodingSeniors

Shortest-path finder

Represent a maze as a grid in Python and find the shortest route with breadth-first search. Compare it with the left-hand rule.

You'll use
Python lab free coding
You'll learn
Data structures, BFS, complexity

Web & Dev

Real web pages in Web Lab.

Web & DevExplorers+

Greeting card

Make a birthday or thank-you card for someone real. Choose the colours, fonts and message, then show it to them.

You'll use
Web Lab Level 1
You'll learn
How design choices change a page

Web & DevBuilders+

Hobby page

A page about something you love: a sport, a game, a pet or a book. Use headings, a list, a picture and your own colours.

You'll use
Web Lab About me template
You'll learn
HTML structure, CSS colours and fonts

Web & DevChallengers+

Quiz game

A multiple-choice quiz that keeps score and says "well done" at the end. Test it on a younger pupil.

You'll use
Web Lab Click me! template
You'll learn
JavaScript events, variables, if

Web & DevChallengers+

Club or event website

A site for a real school club or event, with a gallery, the key details and a clear layout that works on phones.

You'll use
Web Lab Event poster and Photo gallery templates
You'll learn
Layout, responsive design, writing for an audience

Web & DevSeniors

Portfolio site

A personal site showing off your best club projects, built from a blank page. Check it works with a keyboard and a screen reader.

You'll use
Web Lab Blank canvas
You'll learn
Semantic HTML, accessibility, CSS grid

Hardware Planned

ESP32 and MicroPython. Until kits arrive, every project here can be built in the free Wokwi ESP32 simulator.

HardwareBuilders+

Traffic light

Three LEDs that change in the right order, with the right timing. Add a button for a pedestrian crossing.

You'll use
ESP32, 3 LEDs, button
You'll learn
Sequencing, loops, timing

HardwareChallengers+

Night light

A light that turns itself on when the room gets dark, just like wall_ahead() but with a real sensor.

You'll use
ESP32, light sensor, LED
You'll learn
Reading sensors, thresholds, if

HardwareChallengers+

Reaction-time game

An LED lights up after a random wait. Who can hit the button fastest? Keep a high score.

You'll use
ESP32, LED, buttons
You'll learn
Randomness, timing, variables

HardwareSeniors

Weather station

Measure temperature and light, then have the ESP32 serve a web page showing the live readings.

You'll use
ESP32, sensors, Web Lab skills
You'll learn
Wi-Fi, HTTP, combining hardware and web

HardwareSeniors · team

Maze robot

A two-wheeled robot that drives a maze taped on the floor using the same forward(n), left() and right() commands as CodeQuest.

You'll use
ESP32, motors, motor driver, distance sensor
You'll learn
Motors, sensors, turning code into movement

Cyber

Defend by understanding attacks.

CyberExplorers+

Spot-the-phish posters

Design posters that teach younger pupils the warning signs of a scam message, then put them up around school.

You'll use
Paper or Web Lab
You'll learn
Phishing, social engineering, communication

CyberChallengers+

Password strength checker

A Python program that scores a password on length, variety and common words, and explains how to make it stronger.

You'll use
Python lab free coding
You'll learn
Strings, conditions, password security

CyberChallengers+

Bandit logbook

Work through OverTheWire Bandit and keep a logbook of each level: what you tried, what worked, and the command you learned.

You'll use
OverTheWire Bandit (supervised)
You'll learn
Linux command line, persistence

CyberSeniors

Security review

Review a classmate's Web Lab page (with permission): could user input break it? Write up what you found and how to fix it.

You'll use
Web Lab, Cyber tab
You'll learn
XSS, input validation, responsible disclosure

CyberSeniors · team

CTF team entry

Form a team and enter picoCTF, a free capture-the-flag competition for school students.

You'll use
picoCTF
You'll learn
Cryptography, forensics, web security, teamwork

AI Future

Future consideration.

AIBuilders+

Rock, paper, scissors AI

Train a model to recognise your hand shapes with the webcam, then play against it.

You'll use
Teachable Machine
You'll learn
Training data, classification

AIChallengers+

Bias detective

Train a model on deliberately unbalanced examples and watch it get things wrong. Then fix the data and compare.

You'll use
Machine Learning for Kids
You'll learn
Bias, fairness, data quality

AISeniors

Learning maze robot

A robot that learns a maze by trial and error and gets faster each time. Compare it with your hand-written solver.

You'll use
Python
You'll learn
Reinforcement learning basics

Open source

Contribute to real projects.

Open sourceBuilders+

The Snack Shack app: a broken banner image, a misspelled heading and pale, hard-to-read prices

Fix the Snack Shack

Our own deliberately broken school tuck-shop app, with 17 bugs to hunt. Spelling slips and broken pictures for beginners; maths bugs, a Python leaderboard, a traffic light and a security hole for older pupils. Fix one, then send it in as a real pull request.

You'll use
The CodeQuest Snack Shack repo on GitHub (link coming soon)
You'll learn
Debugging, reading code, tests, the fork and pull request workflow

Open sourceChallengers+

Your first pull request

Follow the First Contributions guide to make a real (safe) contribution on GitHub, step by step.

You'll use
GitHub account (age 13+, with permission)
You'll learn
Git, forks, pull requests

Open sourceSeniors

Good first issue

Find a beginner-friendly issue on Good First Issue and fix it. Documentation and typo fixes count.

You'll use
GitHub
You'll learn
Reading other people's code, collaboration

Combine areas

Capstone ideas that mix two or more areas.

Combine areasBuilders+

Online safety website

A website that teaches younger pupils to spot scams, with a quiz at the end.

You'll use
Web Lab + Cyber
You'll learn
Web, cyber, writing for an audience

Combine areasSeniors

Sensor dashboard

A web page that shows live readings from your hardware, with charts and alerts.

You'll use
Hardware + Web
You'll learn
Hardware, web, data

Combine areasSeniors · team

Secure robot

Hardware, Software and Cyber stream pupils build a maze robot together, then try to secure it against each other.

You'll use
Hardware + Coding + Cyber
You'll learn
Teamwork across specialisms

Safety first: cyber projects are only ever done on systems you own or have written permission to test. Projects that use outside sites (GitHub, picoCTF, Bandit, AI tools) are done with a teacher's or parent's permission and follow each site's age rules.