{
  "chapters": [
    {
      "number": 1,
      "slug": "01-base-camp",
      "title": "Base camp",
      "page": "https://londopy.github.io/nexium/topo/01-base-camp.html",
      "exercises": [],
      "quiz": false
    },
    {
      "number": 2,
      "slug": "02-hello-world",
      "title": "Hello, world",
      "page": "https://londopy.github.io/nexium/topo/02-hello-world.html",
      "exercises": [
        {
          "name": "fill_greeting",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/02-hello-world/fill_greeting.nx"
        },
        {
          "name": "predict_pitches",
          "kind": "predict the output",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/02-hello-world/predict_pitches.nx"
        }
      ],
      "quiz": false
    },
    {
      "number": 3,
      "slug": "03-first-script",
      "title": "Your first script",
      "page": "https://londopy.github.io/nexium/topo/03-first-script.html",
      "exercises": [
        {
          "name": "fix_count_words",
          "kind": "fix the error",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/03-first-script/fix_count_words.nx"
        },
        {
          "name": "write_initials",
          "kind": "write it",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/03-first-script/write_initials.nx"
        }
      ],
      "quiz": false
    },
    {
      "number": 4,
      "slug": "04-the-repl",
      "title": "The REPL",
      "page": "https://londopy.github.io/nexium/topo/04-the-repl.html",
      "exercises": [],
      "quiz": false
    },
    {
      "number": 5,
      "slug": "05-values-and-types",
      "title": "Values and types",
      "page": "https://londopy.github.io/nexium/topo/05-values-and-types.html",
      "exercises": [
        {
          "name": "fill_wrap",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/05-values-and-types/fill_wrap.nx"
        },
        {
          "name": "fix_widths",
          "kind": "fix the error",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/05-values-and-types/fix_widths.nx"
        },
        {
          "name": "predict_slices",
          "kind": "predict the output",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/05-values-and-types/predict_slices.nx"
        }
      ],
      "quiz": true
    },
    {
      "number": 6,
      "slug": "06-functions-and-errors",
      "title": "Functions and errors",
      "page": "https://londopy.github.io/nexium/topo/06-functions-and-errors.html",
      "exercises": [
        {
          "name": "fill_orelse",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/06-functions-and-errors/fill_orelse.nx"
        },
        {
          "name": "write_letter",
          "kind": "write it",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/06-functions-and-errors/write_letter.nx"
        }
      ],
      "quiz": true
    },
    {
      "number": 7,
      "slug": "07-structs-enums-traits",
      "title": "Structs, enums and traits",
      "page": "https://londopy.github.io/nexium/topo/07-structs-enums-traits.html",
      "exercises": [
        {
          "name": "fill_corners",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/07-structs-enums-traits/fill_corners.nx"
        },
        {
          "name": "write_area",
          "kind": "write it",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/07-structs-enums-traits/write_area.nx"
        }
      ],
      "quiz": false
    },
    {
      "number": 8,
      "slug": "08-ownership",
      "title": "Ownership",
      "page": "https://londopy.github.io/nexium/topo/08-ownership.html",
      "exercises": [
        {
          "name": "fill_own",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/08-ownership/fill_own.nx"
        },
        {
          "name": "fix_moved",
          "kind": "fix the error",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/08-ownership/fix_moved.nx"
        },
        {
          "name": "predict_refcount",
          "kind": "predict the output",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/08-ownership/predict_refcount.nx"
        }
      ],
      "quiz": true
    },
    {
      "number": 9,
      "slug": "09-collections",
      "title": "Collections",
      "page": "https://londopy.github.io/nexium/topo/09-collections.html",
      "exercises": [
        {
          "name": "fill_counts",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/09-collections/fill_counts.nx"
        },
        {
          "name": "write_unique",
          "kind": "write it",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/09-collections/write_unique.nx"
        }
      ],
      "quiz": false
    },
    {
      "number": 10,
      "slug": "10-project-calculator",
      "title": "Project: a calculator",
      "page": "https://londopy.github.io/nexium/topo/10-project-calculator.html",
      "exercises": [
        {
          "name": "fill_remainder",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/10-project-calculator/fill_remainder.nx"
        },
        {
          "name": "fix_unknown_name",
          "kind": "fix the error",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/10-project-calculator/fix_unknown_name.nx"
        },
        {
          "name": "predict_power",
          "kind": "predict the output",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/10-project-calculator/predict_power.nx"
        }
      ],
      "quiz": true
    },
    {
      "number": 11,
      "slug": "11-project-todo",
      "title": "Project: a to-do list",
      "page": "https://londopy.github.io/nexium/topo/11-project-todo.html",
      "exercises": [
        {
          "name": "fill_usage",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/11-project-todo/fill_usage.nx"
        },
        {
          "name": "write_item_json",
          "kind": "write it",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/11-project-todo/write_item_json.nx"
        }
      ],
      "quiz": true
    },
    {
      "number": 12,
      "slug": "12-binary-patterns",
      "title": "Binary patterns",
      "page": "https://londopy.github.io/nexium/topo/12-binary-patterns.html",
      "exercises": [
        {
          "name": "fill_frame",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/12-binary-patterns/fill_frame.nx"
        },
        {
          "name": "predict_nibbles",
          "kind": "predict the output",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/12-binary-patterns/predict_nibbles.nx"
        }
      ],
      "quiz": false
    },
    {
      "number": 13,
      "slug": "13-comptime",
      "title": "Compile time",
      "page": "https://londopy.github.io/nexium/topo/13-comptime.html",
      "exercises": [
        {
          "name": "fill_table",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/13-comptime/fill_table.nx"
        },
        {
          "name": "fix_fib",
          "kind": "fix the error",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/13-comptime/fix_fib.nx"
        }
      ],
      "quiz": false
    },
    {
      "number": 14,
      "slug": "14-testing",
      "title": "Tests",
      "page": "https://londopy.github.io/nexium/topo/14-testing.html",
      "exercises": [
        {
          "name": "test_clamp",
          "kind": "make the tests pass",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/14-testing/test_clamp.nx"
        },
        {
          "name": "write_is_sorted",
          "kind": "write it",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/14-testing/write_is_sorted.nx"
        }
      ],
      "quiz": false
    },
    {
      "number": 15,
      "slug": "15-effects",
      "title": "Effects",
      "page": "https://londopy.github.io/nexium/topo/15-effects.html",
      "exercises": [
        {
          "name": "fill_bound",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/15-effects/fill_bound.nx"
        },
        {
          "name": "fix_promise",
          "kind": "fix the error",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/15-effects/fix_promise.nx"
        }
      ],
      "quiz": true
    },
    {
      "number": 16,
      "slug": "16-concurrency",
      "title": "Threads and parallel loops",
      "page": "https://londopy.github.io/nexium/topo/16-concurrency.html",
      "exercises": [
        {
          "name": "fill_join",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/16-concurrency/fill_join.nx"
        }
      ],
      "quiz": false
    },
    {
      "number": 17,
      "slug": "17-networking",
      "title": "A network service",
      "page": "https://londopy.github.io/nexium/topo/17-networking.html",
      "exercises": [
        {
          "name": "fill_greet",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/17-networking/fill_greet.nx"
        },
        {
          "name": "write_query_param",
          "kind": "write it",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/17-networking/write_query_param.nx"
        }
      ],
      "quiz": true
    },
    {
      "number": 18,
      "slug": "18-your-first-gui",
      "title": "Your first GUI",
      "page": "https://londopy.github.io/nexium/topo/18-your-first-gui.html",
      "exercises": [
        {
          "name": "fill_rect",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/18-your-first-gui/fill_rect.nx"
        },
        {
          "name": "predict_frames",
          "kind": "predict the output",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/18-your-first-gui/predict_frames.nx"
        }
      ],
      "quiz": false
    },
    {
      "number": 19,
      "slug": "19-packages",
      "title": "Packages",
      "page": "https://londopy.github.io/nexium/topo/19-packages.html",
      "exercises": [
        {
          "name": "write_newer",
          "kind": "write it",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/19-packages/write_newer.nx"
        }
      ],
      "quiz": true
    },
    {
      "number": 20,
      "slug": "20-shipping",
      "title": "Shipping a library",
      "page": "https://londopy.github.io/nexium/topo/20-shipping.html",
      "exercises": [
        {
          "name": "fill_checksum",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/20-shipping/fill_checksum.nx"
        },
        {
          "name": "fix_export_buffer",
          "kind": "fix the error",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/20-shipping/fix_export_buffer.nx"
        }
      ],
      "quiz": true
    },
    {
      "number": 21,
      "slug": "21-project-neural-network",
      "title": "Project: a neural network",
      "page": "https://londopy.github.io/nexium/topo/21-project-neural-network.html",
      "exercises": [
        {
          "name": "fill_derivative",
          "kind": "fill in the blank",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/21-project-neural-network/fill_derivative.nx"
        },
        {
          "name": "fix_keep_input",
          "kind": "fix the error",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/21-project-neural-network/fix_keep_input.nx"
        },
        {
          "name": "write_matvec",
          "kind": "write it",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/21-project-neural-network/write_matvec.nx"
        }
      ],
      "quiz": true
    },
    {
      "number": 22,
      "slug": "22-tools",
      "title": "The tools",
      "page": "https://londopy.github.io/nexium/topo/22-tools.html",
      "exercises": [],
      "quiz": true
    },
    {
      "number": 23,
      "slug": "23-summit",
      "title": "The summit",
      "page": "https://londopy.github.io/nexium/topo/23-summit.html",
      "exercises": [
        {
          "name": "write_highest",
          "kind": "write it",
          "source": "https://github.com/Londopy/nexium/blob/main/topo/exercises/23-summit/write_highest.nx"
        }
      ],
      "quiz": false
    }
  ]
}