move to indexedb and add about page
All checks were successful
Deploy Sokko G / deploy (push) Successful in 7s
All checks were successful
Deploy Sokko G / deploy (push) Successful in 7s
This commit is contained in:
parent
a8809afdfd
commit
772b9951de
12 changed files with 855 additions and 249 deletions
22
README.md
22
README.md
|
|
@ -6,13 +6,13 @@ Sokko G propose des toolboxes modulaires stockées dans le navigateur, ainsi que
|
|||
|
||||
## Fonctionnalités
|
||||
|
||||
- Toolboxes locales stockées dans `localStorage`.
|
||||
- Toolboxes locales stockées dans IndexedDB.
|
||||
- Outils disponibles : bloc notes, checklist avec quantités, images, annotation d’images, liens, compteurs et calculateur.
|
||||
- Import/export d’une toolbox.
|
||||
- Import/export global de toutes les toolboxes.
|
||||
- Association locale entre une page jeu et une toolbox.
|
||||
- Panneau latéral redimensionnable sur les pages jeux.
|
||||
- Suivi et contrôle du quota localStorage.
|
||||
- Suivi d’un budget de stockage recommandé, avec quota navigateur en information.
|
||||
- Pages de guides de jeu éditables via JSON.
|
||||
|
||||
## Démarrage
|
||||
|
|
@ -64,7 +64,7 @@ Les contenus maintenus à la main sont regroupés dans `website/public/data`.
|
|||
|
||||
| Fichier | Rôle |
|
||||
| --- | --- |
|
||||
| `website/public/data/site.json` | Textes généraux du site : home, navigation, sidebar, page toolboxes. |
|
||||
| `website/public/data/site.json` | Textes généraux du site : home, about, navigation, sidebar, page toolboxes. |
|
||||
| `website/public/data/games.json` | Liste des jeux affichés sur `/games` et contenus des cards jeux. |
|
||||
| `website/public/data/mhwilds/monsters.json` | Données des monstres Monster Hunter Wilds. |
|
||||
| `website/public/data/mhwilds/endemic_life.json` | Données de la faune Monster Hunter Wilds. |
|
||||
|
|
@ -97,7 +97,7 @@ Chaque outil possède son propre fichier de composant :
|
|||
|
||||
- `website/src/features/toolboxes/modules/NotepadModule.jsx`
|
||||
- `website/src/features/toolboxes/modules/ChecklistModule.jsx`
|
||||
- `website/src/features/toolboxes/modules/ScreenshotsModule.jsx` : outil Images, conservé sous ce nom technique pour le stockage existant.
|
||||
- `website/src/features/toolboxes/modules/ScreenshotsModule.jsx` : outil Images, conservé sous ce nom technique historique.
|
||||
- `website/src/features/toolboxes/modules/LinksModule.jsx`
|
||||
- `website/src/features/toolboxes/modules/CountersModule.jsx`
|
||||
- `website/src/features/toolboxes/modules/CalculatorModule.jsx`
|
||||
|
|
@ -107,7 +107,7 @@ Pour ajouter ou maintenir un outil :
|
|||
|
||||
- créer son fichier dans `website/src/features/toolboxes/modules/` ;
|
||||
- l’ajouter au registre `MODULE_COMPONENTS` dans `website/src/features/toolboxes/modules/index.jsx` ;
|
||||
- garder les données persistées via les helpers de `website/src/main.jsx` tant que le stockage reste en localStorage.
|
||||
- garder les données persistées via le service IndexedDB `website/src/utils/indexedDbStorage.js`.
|
||||
|
||||
## Structure
|
||||
|
||||
|
|
@ -152,11 +152,11 @@ Pour ajouter ou maintenir un outil :
|
|||
|
||||
## Stockage local
|
||||
|
||||
Clés principales :
|
||||
Les données utilisateur sont stockées dans IndexedDB, dans la base `sokkog`.
|
||||
|
||||
- `sokkog:toolboxes` : registre local des toolboxes.
|
||||
- `sokkog:game-toolbox-links` : associations locales jeu -> toolbox.
|
||||
- `sokkog:toolbox:{toolboxId}:module:{moduleId}` : données de chaque outil.
|
||||
- `sokkog:drawer-width` : largeur du panneau latéral.
|
||||
Espaces principaux :
|
||||
|
||||
Le quota applicatif est contrôlé côté navigateur avant écriture. Les imports globaux simulent l’espace nécessaire avant de modifier les données locales.
|
||||
- `kv` : registre des toolboxes, associations jeu -> toolbox et réglages locaux.
|
||||
- `modules` : données de chaque outil, indexées par `{toolboxId}:{moduleId}`.
|
||||
|
||||
La barre affichée utilise un budget recommandé de confort pour l’app. Le quota navigateur réel vient de `navigator.storage.estimate()` et peut être beaucoup plus élevé selon l’espace disque disponible. Les images et annotations restent locales et peuvent occuper beaucoup d’espace ; les exports globaux restent recommandés pour sauvegarder les données.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue