{
  "features": {
    "hero": {
      "title": "Conçu pour le développement web moderne",
      "subtitle": "Chaque fonctionnalité est pensée pour rendre le développement HTML-first puissant, rapide et agréable."
    },
    "showcase1": {
      "badge": "Fonctionnalité clé",
      "title": "Gestion réactive de l'état",
      "desc": "Déclarez l'état directement en HTML avec state. Les changements se propagent automatiquement à tous les éléments liés — pas de store à configurer, pas de reducers, pas de boilerplate.",
      "highlights": "Suivi automatique des dépendances, support des objets imbriqués, propriétés calculées et partage d'état entre composants."
    },
    "showcase2": {
      "badge": "Rendu",
      "title": "Rendu déclaratif",
      "desc": "Utilisez if, each, show et bind pour contrôler le rendu. Pas de JSX, pas de template literals — juste des attributs HTML.",
      "highlights": "Rendu conditionnel avec <code>if</code>, rendu de listes avec <code>each</code>, interpolation de texte avec <code>bind</code> et basculement de visibilité avec <code>show</code>."
    },
    "showcase3": {
      "badge": "Interactivité",
      "title": "Gestion intuitive des événements",
      "desc": "Liez les événements avec la syntaxe on:event. Accédez à l'état directement dans les handlers sans this ni callbacks.",
      "highlights": "Click, submit, input et bien plus. Accès direct à l'état dans les handlers avec support des modificateurs d'événements — aucune fonction wrapper nécessaire."
    },
    "grid": {
      "title": "Plus de fonctionnalités",
      "subtitle": "Tout ce dont vous avez besoin, rien de superflu",
      "routing": {
        "title": "Routage côté client",
        "desc": "Routage SPA complet avec route et route-view. Mode hash et history, paramètres dynamiques, routes imbriquées et guards."
      },
      "forms": {
        "title": "Gestion des formulaires",
        "desc": "Liaison bidirectionnelle avec model, validation intégrée, messages d'erreur et gestion de la soumission. (Validation maintenant dans NoJS Elements)"
      },
      "fetch": {
        "title": "Fetch & API",
        "desc": "Récupération de données déclarative avec get et post. États de chargement, gestion des erreurs et mise en cache intégrés."
      },
      "css": {
        "title": "Liaisons CSS",
        "desc": "Styles dynamiques avec class-* et style-*. Liez les classes CSS et les styles inline de manière réactive à l'état."
      },
      "lifecycle": {
        "title": "Hooks de cycle de vie",
        "desc": "Accédez aux phases mount, update et destroy. Exécutez la logique d'initialisation et de nettoyage avec un contrôle précis."
      },
      "zero": {
        "title": "Zéro dépendance",
        "desc": "Pas d'outils de build, pas de bundlers, pas de npm install. Ajoutez simplement une balise script et commencez à construire instantanément."
      }
    },
    "cta": {
      "title": "Prêt à construire ?",
      "subtitle": "Commencez à utiliser No.JS en moins de 30 secondes.",
      "button": "Commencer maintenant"
    }
  }
}
