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 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. Let your facilitator know which one you're submitting.

Your Roadmap

You should attempt both Tic-Tac-Toe and JavaScript Carnival. The one you submit for assessment must be fully complete.

SectionTimeRequired?
Set up15 min⚑ Required
Inflate the Unicorn3 hours⚑ Required
Whack-A-Mole5 hours⚑ Required
Dress the Clown5 hours⚑ Required
How to know you've nailed it⚑ Required
Reflect20 min⚑ Required

Set up

Step 1: Find the repo

Go to the javascript-carnival repo in the Dev Academy Foundations GitHub org.

Step 2: Fork and follow the instructions

Fork the repo to your own GitHub account, 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.

GameTime
Inflate the Unicorn3 hours
Whack-A-Mole5 hours
Dress the Clown5 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.

How to know you've nailed it

LevelYou can...
🪨Intro ClimbComplete at least one carnival game so it works as described in the README⚑ Required
🧗Core AscentComplete all three games — code runs without errors and uses variables, functions, loops, and conditionals⚑ Required if assessed
🏔️SummitComplete all three games and can explain what each part of your code does◎ Optional