Head of Computer Science at The King’s School, Chester.
I provide structured C#/WPF exemplars to support students developing NEA projects, particularly those moving from console-based C# into desktop GUI applications.
- GitHub: https://github.com/MrHallKSC
- Website: https://www.oliverhall.com/
These repositories are provided as reference exemplars.
They are intended to be studied, adapted, and extended — not copied — to support students in designing and justifying their own NEA projects.
| Project | Screenshot | Description | Key skills illustrated |
|---|---|---|---|
| TrafficLightWPF | ![]() |
A first WPF exemplar using a UK traffic light simulation. Demonstrates how a simple state machine can drive GUI behaviour using timers and events. Designed for students with no prior WPF experience. | XAML layout Code-behind Event handling Timers State machines |
| GridExemplarWPF | ![]() |
Renders a 2D grid of square cells onto a Canvas, with randomly assigned NESW walls and visual selection. Provides a clear separation between the data model and rendering. | 2D arrays Canvas drawing Model–view separation Coordinate systems |
| Project | Screenshot | Description | Key skills illustrated |
|---|---|---|---|
| DatabaseExampleWPF | ![]() |
A cut-down library management system using SQLite. Illustrates how a desktop application can persist data and work with relationships in a relational database. | SQLite CRUD operations SQL JOINs Parameterised queries Data binding |
| HexMinesweeper | ![]() |
A hexagonal Minesweeper variant with custom coordinate systems for six-neighbour topology. Demonstrates flood-fill algorithms, JSON persistence, and separation of game logic from UI presentation. | Hex coordinates Flood-fill algorithms Saving to JSON Layered project structure Observer pattern (IUpdateValues) |
| SnookerWPF | ![]() |
A larger exemplar featuring a physics-driven snooker simulation. Intended to demonstrate scale, structure, and algorithmic complexity rather than act as a template solution. | OOP structure Simulation loops Collision handling Lists & iteration Applied maths |
These exemplars are designed to:
- reduce the barrier to starting WPF-based NEA projects
- show realistic project scope and structure
- highlight patterns students can justify and adapt
They are not intended to be submitted as coursework.




