- Fond génératif beaucoup plus lumineux et coloré (base par scène, taches plus grandes/saturées, scrim réduit à un dégradé directionnel léger côté texte) - le premier essai était encore jugé trop sombre/ invisible par l'utilisateur. - Cause réelle du "rien n'a changé" : le Caddyfile ne fixait aucun Cache-Control, donc le navigateur appliquait sa propre heuristique et gardait l'ancien index.html en cache après un déploiement. Corrigé sur le serveur (Caddyfile) et documenté dans tripoli-edge/deploy/Caddyfile.snippet : `no-cache` sur index.html (revalidation à chaque chargement), cache long `immutable` sur /assets/* (noms hachés par Vite, donc sans risque). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| public | ||
| src | ||
| .env | ||
| .env.example | ||
| .gitignore | ||
| .oxlintrc.json | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| postcss.config.js | ||
| README.md | ||
| tailwind.config.js | ||
| tsconfig.app.json | ||
| tsconfig.json | ||
| tsconfig.node.json | ||
| vite.config.ts | ||
Tripoli Cloud — frontend
React + TypeScript + Vite + Tailwind. Appelle réellement tripoli-api
via /api/... (même origine, servi par le Caddy partagé - voir le
README racine) : plus aucune donnée simulée.
Ce qui est réel
- Auth : inscription, connexion, invité (compte réel réutilisé), session persistée par cookie, restaurée au chargement.
- Fichiers : upload réel (XHR, vraie progression), téléchargement,
suppression, filtré par catégorie (
file/photo/backup). - Photos : grille des fichiers catégorie
photo, vraies miniatures (<img src="/api/files/:id">), pas de génération de miniature à part. - Sauvegardes : fichiers catégorie
backup- pas de suivi multi-appareils (aucun agent client n'existe). - Espace disque :
used_bytesréel (somme des fichiers),available_bytesréel (statvfscôté serveur) - jamais un quota inventé. - Notifications : émises par le serveur à chaque upload/suppression.
- Réglages : section Compte depuis le vrai utilisateur ; préférences de
notification dans
localStorage(device-local, pas synchronisé - annoncé comme tel, pas simulé comme synchronisé).
Ce qui a été retiré (pas simulé)
La maquette d'origine (Tripoli Cloud.dc.html) incluait des éléments
sans fonctionnalité réelle possible dans cette version : 2FA, clé de
récupération, accès partagés, albums photo, dossiers, "4 appareils
sauvegardés", chiffres marketing sur la page de connexion, chiffrement
AES-256 côté client. Retirés plutôt que simulés - voir les commentaires
dans src/api/*.ts pour le détail de chaque décision.
Développement
npm install
npm run dev # nécessite tripoli-api accessible sur /api (proxy Vite à ajouter si besoin en local)
npm run build # build de production, servi en statique par Caddy