Skip to content
Hone your geography!
JavaScript CSS HTML
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

World Borders Quiz

This game strengthens the player's geography through randomly generated multiple-choice questions.

For example -

  • Which of these does not border Belize?

    • A. Mexico
    • B. Guatemala
    • C. Honduras

(The answer is Honduras.)

Try it here!

You can create custom quizzes by playing with the URL. Examples -

Development Guide

First install Git and Node.js, then open your command prompt and run -

git clone
cd borders-quiz
npm install
npm start

Now you can play the game at http://localhost:8000!

Adding a quiz is simple. Just add relevant entries to borders.json and quiz-modes.json. You can also play with some settings in game-settings.json (e.g. more precise maps, prepending "the").

However, you must observe these rules or the game will break -

  • The top-level labels of borders.json and quiz-modes.json must match.
  • All entries in borders.json must be unique. Add trailing underscores to avoid conflicts with entries in existing quiz modes.
  • If a territory is on an island and borders every other territory on that island (e.g. Haiti and the Dominican Republic), you must manually provide alternative answer choices in question-settings.json.

(Running npm run validate-data will alert you to game-breaking data.)

You can find official U.S. Census Bureau KML data here.

Known Bugs

  • Territory names in more recent quiz modes aren't properly abbreviated on mobile.

  • There's sometimes a distracting black flash when the maps load on Firefox. This has me stumped.


The idea for this project was taken from this beautiful diagram in Algorithms by Dasgupta, Papadimitriou, and Vazirani.

You can’t perform that action at this time.