JavaScript Carnival
The Big Idea
The JavaScript Carnival is a series of broken carnival games that you'll fix using code. The games are listed in order of difficulty.
⚑ This task can be submitted for assessment — FND04 JavaScript Programs You choose either this or Tic-Tac-Toe for NZQA marking. If you choose this one, it needs to be fully complete. Your code will be marked on whether it uses variables, functions, loops, and conditionals correctly, and whether it runs without errors. You will submit a link to your branch via the Assessment Tracker (AT) — see Submit via AT below.
Your Roadmap
You should attempt both Tic-Tac-Toe and JavaScript Carnival. The one you submit for assessment must be fully complete.
| Section | Time | Required? |
|---|---|---|
| Set up | 15 min | ⚑ Required |
| Inflate the Unicorn | 3 hours | ⚑ Required |
| Whack-A-Mole | 5 hours | ⚑ Required |
| Dress the Clown | 5 hours | ⚑ Required |
| Submit via AT | 5 min | ⚑ Required if assessed |
| How to know you've nailed it | — | ⚑ Required |
| Reflect | 20 min | ⚑ Required |
Set up
Step 1: Clone the repo
Go to your cohort's repo: javascript-carnival — select your cohort in the top-right corner of this page to see the link. On the repo page, click the green Code button and copy the SSH URL.
Clone it to your machine and navigate into it:
git clone <paste the SSH URL you copied>cd javascript-carnival
Step 2: Create your branch
Use your full name in lowercase with a hyphen:
git checkout -b your-branch-name
Then follow the instructions in the repo's README to get started.
The games
The carnival has three games, each in its own folder inside the repo. Work through them in order — later games build on the skills practised in earlier ones.
| Game | Time |
|---|---|
| Inflate the Unicorn | 3 hours |
| Whack-A-Mole | 5 hours |
| Dress the Clown | 5 hours |
If you're not submitting this for assessment, do your best — get as far as you can and focus on writing clean, working code rather than rushing through all three partially. Two completed games still shows solid JavaScript skills.
If you are submitting this for assessment, all three games need to be fully complete.
If the task feels easy, use the extra capacity to experiment — refactor a working solution, add a feature, or look at how you might solve the same problem a different way.
If the task feels overwhelming, scale back the scope on one game. Get one small piece working first (e.g. the click event), then build outward.
Submit via AT
Once all three games are fully complete and working, push your branch:
git add -Agit commit -m "Complete javascript-carnival"git push origin your-branch-name
Go to your branch on GitHub and copy its URL — it will look like https://github.com/YOUR-COHORT/javascript-carnival/tree/your-branch-name.
Submit FND04 — JavaScript Programs in the Assessment Tracker (AT) with a link to your branch. Only submit one of Tic-Tac-Toe or JavaScript Carnival — whichever one you completed fully.
How to know you've nailed it
| Level | You can... | ||
|---|---|---|---|
| 🪨 | Intro Climb | Complete at least one carnival game so it works as described in the README | ⚑ Required |
| 🧗 | Core Ascent | Complete all three games — code runs without errors and uses variables, functions, loops, and conditionals — and submit via AT if assessed | ⚑ Required if assessed |
| 🏔️ | Summit | Complete all three games and can explain what each part of your code does | ◎ Optional |