Rock Paper Scissors
Self-learning project · 2025
A browser game against a computer opponent that adapts to how you play.

Problem
I wanted to learn HTML, CSS and JavaScript properly, step by step, by building one complete thing without a framework: a game against the computer with three difficulty levels and progress that survives a page refresh.
My role
- Built the whole game on my own in plain HTML, CSS and JavaScript.
- Implemented Easy, Medium and Hard modes; the computer tracks how often you pick each move and adapts.
- Saved score, round, difficulty and move history in localStorage, with a reset that clears it.
Challenges
- Learning each layer in turn: structuring the page in HTML, styling it in CSS, then wiring up the game logic and DOM events in JavaScript.
- Making the Medium and Hard modes adapt by tracking how often the player picks each move, while keeping the game fair to play.
- Keeping the score, round, difficulty and move history in localStorage in step with what's on screen, including after a reset.
Results
- Deployed and playable on GitHub Pages, with no build step or dependencies.