Pick a track and start with the first lesson
Wun Code has 30 tracks across 12 areas, with 269 interactive lessons. Each track is a short, complete course: follow it in order or jump straight to what you need.
Showing 30 tracks
Web
11 tracks, 88 lessons- </>Beginner
Web Basics
Start with your very first HTML tag and finish with a complete interactive app.
8 lessons1.5 hours - { }Intermediate
CSS in Depth
Go deeper into the box model, custom properties, positioning, container queries and more, so you understand what's really going on behind the styles you see.
8 lessons1.5 hours - { }Beginner
Text and Typography
Learn to scale headings, choose the right units, and set line length and text direction, because text is what people read most in any interface.
8 lessons1.5 hours - JSIntermediate
JavaScript in Depth
Work with data, functions and operations that take time, and build up to an interface that creates its elements from data.
8 lessons2 hours - JSIntermediate
Data and State
A UI is built from data, so here you learn to filter, sort and group that data without touching the DOM directly.
8 lessons2 hours - { }Advanced
Professional Interfaces
Learn page layout, form validation, motion and accessibility: the things that make an interface comfortable to use in real life, not just nice to look at.
8 lessons2 hours - JSIntermediate
Advanced Forms
In this track you'll write your own validation rules, tie one field to another, and write error messages a screen reader can announce.
8 lessons1.5 hours - JSIntermediate
Networking and Data Fetching
Learn to read JSON, wait for the server to respond, and handle loading and failure states. That's what separates a demo from a product people can rely on.
8 lessons2 hours - JSIntermediate
Finding and Fixing Bugs
Learn how to read an error message, check inputs before you use them, and catch the errors worth handling.
8 lessons1.5 hours - JSAdvanced
Browser Performance
Find out where your page really loses time, and how to win it back by adding elements in one go, making fewer calls and never computing the same thing twice.
8 lessons1.5 hours - JSAdvanced
Practical Algorithms
Write functions for searching, sorting, grouping and flattening nested lists once, then reuse them in every project after that.
8 lessons1.5 hours
TypeScript
2 tracks, 20 lessons- TSIntermediate
TypeScript Basics
Write JavaScript with types that the real TypeScript compiler checks before your code ever runs.
10 lessons2 hours - TSAdvanced
Advanced Types
Learn generics, discriminated unions and utility types, and see how the type system becomes a tool for designing your program.
10 lessons2 hours
Python
3 tracks, 30 lessons- PyBeginner
Python Basics
Start with the most beginner-friendly language there is, and use it to learn variables, strings, lists, conditions, loops and functions.
10 lessons2 hours - PyIntermediate
Data processing in Python
Learn to process real data in Python with comprehensions, dictionaries, sorting and counting.
10 lessons2 hours - PyAdvanced
Object-Oriented Python
Learn classes, special methods, inheritance and exceptions, and see how the libraries you use are built.
10 lessons2 hours
SQL
2 tracks, 20 lessonsLua
2 tracks, 20 lessons- LuaBeginner
Lua Basics
Lua is a small, fast language for writing game scripts, and you'll find it built into Roblox, FiveM and LÖVE.
10 lessons2 hours - LuaIntermediate
Lua Tables and Objects
The table is Lua's only data structure, and you build arrays, dictionaries, objects and classes out of it.
10 lessons2 hours
Games
2 tracks, 20 lessons- LuaAdvanced
Lua for Games
Learn the patterns that game scripts and game servers are built on, such as events, entities, timers and state machines.
10 lessons2.5 hours - JSIntermediate
Browser Games
Build a real canvas game that runs in any browser, and learn the game loop, movement, collisions and scoring along the way.
10 lessons2.5 hours
Ruby
1 track, 10 lessonsC++
1 track, 10 lessonsC#
1 track, 10 lessonsJava
1 track, 10 lessons- REBeginner
Reverse Engineering Basics
Start from the byte: hexadecimal, byte order and bitwise operations, then reading file structures, extracting strings and breaking XOR.
9 lessons2 hours - REIntermediate
Program Analysis
Read assembly, calling conventions and control flow, then build a disassembler and an emulator for a tiny machine, patch its bytes and check their integrity.
8 lessons2 hours - REAdvanced
Reverse Engineering Challenges
Six challenges of rising difficulty where you reverse a check function or bytecode and extract the key with your own code, not by copying it.
6 lessons2 hours