[
  {
    "id": "0",
    "nom": "Web interactif",
    "chapitre1": "Thème loop et fonctions",
    "chapitre2": "Structure de greffon & Hook",
    "chapitre3": "Shortcodes & Filtres",
    "chapitre4": "Ajax vanille",
    "chapitre5": "Composants DHTML",
    "chapitre6": "Single-page web app",
    "chapitre7": "Événements & Données",
    "chapitre8": "App native & paquets",
    "chapitre9": "Cadriciels dans le web",
    "chapitre10": "Exploitation d'un cadriciel"
  },
  {
    "id": "1",
    "nom": "Réseautique",
    "chapitre1": "Concepts OSPF à zone unique",
    "chapitre2": "Configuration OSPFv2 à zone unique",
    "chapitre3": "Concepts de sécurité réseau",
    "chapitre4": "Concepts des Access-lists (ACL)",
    "chapitre5": "Configurations des ACLs pour IPv4",
    "chapitre6": "NAT pour IPv4",
    "chapitre7": "Concepts WAN",
    "chapitre8": "Concepts VPN et IPSec",
    "chapitre9": "Concepts QoS",
    "chapitre10": "Gestion de réseau"
  },
  {
    "id": "2",
    "nom": "Programmation multijoueur",
    "chapitre1": "Dessin sur le canvas",
    "chapitre2": "Timer et animation",
    "chapitre3": "Algorithmes de détection",
    "chapitre4": "Websockets client & événements",
    "chapitre5": "Données et multijoueur",
    "chapitre6": "Websockets serveur de Node.JS",
    "chapitre7": "Données et multijoueur & Sécuriser la logique de jeu",
    "chapitre8": "Animations vectorielles",
    "chapitre9": "Optimisation",
    "chapitre10": "Bibliothèques"
  }
]
