Le stockage local, localStorage, conserve de petites données sous forme de paires clé-valeur de type texte dans le navigateur, sans expiration, et accessibles à toutes les pages de la même origine. sessionStorage dure le temps de l'onglet. On y stocke du JSON via JSON.stringify, jamais de secrets.
Exemple
localStorage.setItem('theme', 'sombre')
localStorage.getItem('theme')