À la demande explicite de l'utilisateur (site jugé "trop moche"), inspiration visuelle prise sur https://www.studiocart.co/ : grands titres serif (Fraunces) avec italique, fond papier clair plutôt que le coffre-fort sombre d'origine, un seul accent vif (citron vert) utilisé avec parcimonie pour les surlignages, cartes blanches nettes à bordure fine, petites touches dessinées à la main (squiggle, flèche) sur l'écran de connexion. - Jetons de thème (index.css, tailwind.config.js) : le thème clair devient la palette par défaut. Le thème sombre existant reste disponible via le bouton de bascule, inchangé. - ThemeContext : thème par défaut passé à 'light'. - Écran de connexion entièrement repensé (fond génératif pastel qui dérive lentement, carte blanche, surlignage citron vert via la nouvelle classe utilitaire .tc-highlight, doodles SVG). - Reste de l'application : cascade automatique via les tokens CSS déjà utilisés partout (bg-panel, text-ink, ...), sans avoir à toucher chaque composant individuellement. Inspiration de studiocart.co pour le ton visuel uniquement (typographie, palette, motifs) - aucun contenu, logo ni image de ce site n'est repris. 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