Le système de crossfade existait déjà mais avec 3 dégradés plats placeholder (commentaire explicite : "à remplacer par de vraies images"). Remplacé par un fond génératif plus riche, à la demande de l'utilisateur (design jugé "moche", contraste douteux sur certains postes) : - 4 scènes (taches de couleur floutées, palette sourde) qui dérivent lentement (@keyframes tc-drift, respecte prefers-reduced-motion) et s'enchaînent en fondu toutes les 8s. - Grain léger (SVG feTurbulence, mix-blend-overlay) contre l'effet "dégradé plat". - Scrim en deux passes (voile uniforme + dégradé directionnel) : le texte reste lisible quelle que soit la scène ou la position, plutôt que de dépendre d'un seul dégradé ancré à gauche. Pas de photo tierce (droits, dépendance externe) - art génératif en CSS/SVG, cohérent avec le ton "coffre-fort minimaliste" du reste de l'interface. 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