Share the start link with students.
Teachers
Use Codington in class
Auto-graded TypeScript exercises. No setup, no accounts, instant feedback.
Share this link with students: https://codington.io/start
How teachers use Codington
Pick one lesson flow per class session.
Let students solve 3-5 exercises, then review common mistakes together.
Suggested lesson flows (60-90 min)
Practical, ready-to-run lesson structure with category links and current difficulty labels.
These lesson paths are aligned with the official TypeScript Handbook. Detailed handbook reading links for each lesson are included in the free class pack.
Lesson 1: TypeScript foundations (part 1)
BeginnerGoal: Set up a strong baseline for core types and function typing
- Primitives25 minEasy
- Functions Basics30 minEasy
Wrap-up: Use the final 15 minutes to review explicit vs inferred types and common parameter mistakes.
Lesson 2: TypeScript foundations (part 2)
BeginnerGoal: Move from basic syntax to object and collection modeling
- Object Types Basics30 minEasy
- Arrays25 minEasy
- Type Aliases20 minEasy
Homework: Assign one extra category drill and ask students to explain their type choices in comments.
Lesson 3: Safer data modeling
BeginnerGoal: Model real data and avoid runtime bugs
- Union & Litteral Types30 minEasy
- Interfaces30 minEasy
Discussion prompt: When to use `type` vs `interface`.
Lesson 4: Null safety and narrowing
IntermediateGoal: Handle uncertainty safely in TypeScript
- null & undefined25 minIntermediate
- Type Guards & Narrowing35 minIntermediate
Practice prompt: Ask students to rewrite one weakly-typed helper into a proper narrowing flow.
Lesson 5: Assertions and uncertainty
IntermediateGoal: Use assertions carefully and prefer safer alternatives
- Type Assertions25 minIntermediate
- any (vs unknown)30 minIntermediate
Key takeaway: Why `unknown` is safer than `any`.
Lesson 6: Generics fundamentals
IntermediateGoal: Build reusable, type-safe abstractions with type parameters
- Generics Fundamentals40 minIntermediate
Checkpoint: Have students explain where inference is enough versus where explicit type parameters help.
Lesson 7: Advanced function typing
AdvancedGoal: Understand how TypeScript models complex APIs
- Functions: Call Signatures & Overloads35 minAdvanced
- Object Types (Deep Dive)30 minAdvanced
Review: API design patterns and overload tradeoffs (15 min).
Lesson 8: Utility patterns from existing types
AdvancedGoal: Compose type-safe helpers from existing values and shapes
- Creating Types from Types (Utility Patterns)35 minAdvanced
- keyof, typeof & Indexed Access35 minAdvanced
Wrap-up: Show how TypeScript inference flows across function parameters, return types, and object access patterns.
Free class pack
Get a practical starter pack so you can run class quickly without building lesson plans from scratch.
- 8 ready-to-run lesson plans (based on the flows above)
- Recommended category order for a 4-6 week module
- Discussion prompts for common student mistakes
- TypeScript Handbook reading links mapped to each lesson
Teacher FAQ
Do students need accounts?
No.
Is any setup required?
No.
Can I assign specific categories?
Yes. Every category has a shareable link.
Is it free for classroom use?
Yes, for now.