• helloquiz logo
  • helloquiz logo
  • helloquiz
  • search
  • anki mode
  • your quizzes
  • account
  • docs
  • donate
  • Creating map quizzes

    Map quizzes are the most common quiz type on the website. Creating them is relatively simple - all they require is a GeoJSON shapefile.

    Initial setup

    For map quizzes, you are required to enter a geoJSON url. If you are using your own geoJSON, you must first upload it to an external hosting service (this will change later once hosting costs are covered by donations). Please make sure that you link to a permanent version of the geoJSON - if the ordering of shapes changes, the quiz will be incorrect! My personal recommendation is uploading the geoJSON as a Github Gist. This is a relatively simple process (see Github's tutorial), and creates a permanently available version that helloquiz can easily use.

    Please note that geoJSONs are not the same as map-making.app JSONs. If you want to create a quiz from a map-making.app json, use the helper tool to turn it into a valid geoJSON. This helper tool automatically tries to generate polygons based on your tags - the end result is often a little wonky, but usually works just fine for a quiz.

    (Technical note: your geoJSON must be a FeatureCollection whose features are all polygons/multipolygons.)

    Settings

    You can edit the following settings for map quizzes:

    • title
    • description
    • country code(s) - the 2 letter country codes of the countries that the quiz applies to, separated with commas
    • show quiz on search pages
    • geoJSON URL
    • geoJSON licence
    • original geoJSON source - if you have uploaded it to a different host, this is worth providing
    • default question format - if you select "image", the quiz is an image quiz, and the questions must be valid (permanent) image URLs

    Including / excluding shapes

    Sometimes, you don't want to display every shape in a geoJSON, especially if you are making a remix. You can include/exclude shapes using either filtering based on geoJSON properties, manually, or both.

    Filtering

    If you want to automatically decide what shapes should be included, you can use the filter menu:

    Filter menu for map quizzes

    In this, you select a geoJSON property name (say, AreaCode) that you want to use to filter - the quiz will only include shapes whose value for this property matches your criteria.

    You can filter using three methods:

    • Comma-separated values: for instance, if you want to make the quiz only apply to area codes 65, 66, and 67, you can enter 65,66,67 as the value, and select comma-separated as the filter type.
    • Regex: if you want a more complex filter, you can use regular expressions. For instance, if you want the quiz to apply to all area codes that start with a 6, you can enter ^6.*$ as the filter value. These can be slightly complicated to construct, so I recommend reading this page to learn how to create regular expressions, and this page to check your regex before using it.
    • Starts with: here, you can set all shapes whose value starts with a certain string. For instance, if you want all area codes that start with a 6, you can enter 6 as the value.

    Alternatively, you can also use manual selection to quickly set some filters, see below.

    Manual selection

    If you want to select shapes manually, change the edit mode to "included shapes" in the menu below, and click on the shape that you want to include-exclude - included shapes are highlighted in purple, while excluded shapes are shown using the default map colour.

    Edit mode menu

    If you want to quickly select several states at once, you can do so by using the dropdown at the top right of the map: just select a geoJSON property name, and your inclusion/exclusion changes will automatically apply to every matching shape.

    You can also combine this with filtering - for instance, you can create a filter to only include area codes that start with a 6, but then manually remove 69 and add 70.

    Adding questions

    You can add questions in two ways: you can either import values based on a geoJSON property, or manually edit the questions.

    Adding from a property

    If you want the questions to correspond to a specific geoJSON property, you can do so from the following menu:

    Automatic import menu for map quizzes

    This will import data based on the features of each geojson. For example, if you have a geojson file whose features contain information about phone codes in a property called AreaCode, you can just enter AreaCode in this form, and the quiz will automatically import the correct codes. In particular, for currently existing quizzes, most phone code and post code quizzes will have AreaCode as their feature names, while most subdivision quizzes will have NAME_{n} where {n} is the level of subdivision (i.e. for Germany, NAME_1 is the state, and NAME_2 is the Landkreise).

    By default, the auto-import feature overwrites all existing questions. If you don't want this to happen, you can uncheck the corresponding checkbox, in which case new questions will be added.

    Manually editing questions

    To add or edit a question of map quizzes, just click on the shape that you want to change the questions for. This will show you a menu like this:

    An edit modal

    Here, you can press "add" to add an additional question to this shape, "delete" to delete an existing question, or edit the text of any question.

    Additionally, you can also use this modal to edit where the shape's label is placed in the "view answers" mode. By default, each label is placed at the geographical centre of the shape, but this is not always ideal - it can sometimes create unfortunate overlaps, or labels placed inside the wrong shape. If this is the case, you can enter a set of coordinates formatted as lat,lng in this box, and the quiz will put the labels in the appropriate place. As an example, entering 47.65127,-122.35074 will put the label in Seattle.

    After you are done editing, you can press ctrl+s or "save edits and close" to apply your changes - note: this will not submit your changes to the server yet: to do so, you must press the submit button (or press ctrl+s again) on the top. If you want your changes to not be applied, you can press esc or "close without saving" instead.

    Creating city quizzes