Commit graph

21 commits

Author SHA1 Message Date
isUnknown
66afa1daad Fix: pointer-events: none sur les lignes verticales
All checks were successful
Deploy / Deploy to Production (push) Successful in 13s
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 14:49:58 +01:00
isUnknown
a737fea100 Feat: navbar mobile padding et hauteur minimale
All checks were successful
Deploy / Deploy to Production (push) Successful in 13s
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 14:40:37 +01:00
isUnknown
d44c886e8c Feat: responsive header mobile + variables breakpoints
- variables.css : --breakpoint-mobile (700px) et --breakpoint-tablet (912px)
- Header : .navbar-item { display: none } en dessous de 700px
- Header/Menu : annotation des media queries avec les variables de référence

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 14:38:06 +01:00
isUnknown
a1785743c9 Fix: cursor outline scale depuis le bon centre
All checks were successful
Deploy / Deploy to Production (push) Successful in 13s
scale() dans le transform plutôt qu'en propriété CSS séparée.
La propriété scale CSS calcule son transform-origin sur la position
layout (avant translate), pas la position visuelle — d'où le décalage.
Avec transform: translate(-50%, -50%) scale(0.5), le centre reste en (0,0).

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 14:29:09 +01:00
isUnknown
8b4fa2aa47 Refactor: cursor dans un wrapper commun pour centrage parfait
- Un seul wrapper positionné par transform, les deux éléments à l'intérieur
- translate(-50%, -50%) sur chaque enfant : centre exact = origine du wrapper
- upon-target sur le wrapper → scale(0.5) sur cursor-outline sans décalage
- Suppression du lerp JS (plus nécessaire avec le centrage CSS)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 14:24:56 +01:00
isUnknown
ebd8ad5e7b Feat: cursor upon-target sur liens et boutons
- Détection de survol via mouseover sur a, button, [role="button"], [tabindex]
- Classe upon-target appliquée au curseur et à son outline
- cursor-outline scale(0.5) au survol d'un élément interactif

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 14:18:59 +01:00
isUnknown
d81eaa1c15 Feat: header transparent quand le menu est ouvert
All checks were successful
Deploy / Deploy to Production (push) Successful in 13s
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 14:07:54 +01:00
isUnknown
dc66d57306 Refactor: consolider toutes les variables CSS dans variables.css
- variables.css : z-index, couleurs et font-sizes au même endroit
- layout.css, buttons.css : z-index: 1 → var(--z-base)
- Suppression de src/style.css (fichier mort, jamais importé)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 14:02:06 +01:00
isUnknown
b7d825b2f0 Feat: variables z-index + header au-dessus du menu
- style.css : plage z-index (--z-base, --z-content, --z-menu, --z-header, --z-cursor)
- Menu : show() au lieu de showModal() pour sortir du top-layer natif,
  Escape géré manuellement via keydown, z-index: var(--z-menu), position: fixed
- Header : z-index: var(--z-header) sur navbar, logo et toggle (toujours au-dessus du menu)
- Cursor/cursor.css : z-index: var(--z-cursor)
- Home : z-index: var(--z-content) sur home-text

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 13:59:19 +01:00
isUnknown
3e9657430f Fix: champs camelCase + anglais, contact data, nettoyage debug
All checks were successful
Deploy / Deploy to Production (push) Successful in 15s
- Blueprint site.yml : renommage en camelCase (contactEmail, contactAddress, socialLinks, legalNotices)
- Controller site.php : mentionsLegales() → legalNotices(), fix (string) casts pour la sérialisation JSON
- state/site.svelte.js : ajout champ contact
- Menu.svelte : nouveau composant dialog pour le menu overlay
- Header.svelte : intégration Menu, animation hamburger CSS
- router/index.js : suppression des console.log de debug

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 13:43:50 +01:00
isUnknown
cfdaf1a6e2 Refactor: sémantique HTML et suppression des styles inline
All checks were successful
Deploy / Deploy to Production (push) Successful in 13s
- App.svelte : suppression du wrapper .app redondant, montage direct sur #app, <section> pour les slides
- Header.svelte : <nav>, <ul><li><a> pour le menu, <button> pour le hamburger, animation hamburger en CSS pur (plus de style inline sur les cercles SVG)
- Home.svelte : fusion div[grid-area]+.olly en .home-bg, suppression de tous les style="" statiques

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 12:58:32 +01:00
isUnknown
e65389534e logo : improve responsive 2026-02-19 12:44:50 +01:00
isUnknown
d7dacd6b6c Feat: navigation au clavier entre slides (← →)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 12:41:50 +01:00
isUnknown
8e01cbe611 Feat: navigation par slides horizontaux
All checks were successful
Deploy / Deploy to Production (push) Successful in 14s
- Nouveau store slides.svelte.js : gestion de l'état des slides (activeIndex, pendingPath, chargement progressif)
- Réécriture du router : remplace navaid par une logique custom avec chargement de la slide initiale puis des autres en arrière-plan
- App.svelte : layout slides-wrapper avec translateX, transition 1000ms
- Header.svelte : menu 100% dynamique depuis slides.all (ordre et titres multilingues depuis Kirby)
- site/controllers/site.php : navigation exposée via site->pages()->listed() avec titres par langue, home prependue

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-19 12:38:07 +01:00
isUnknown
5c3568a12a Fix: golden-grid height 100vh au lieu de 100%
All checks were successful
Deploy / Deploy to Production (push) Successful in 15s
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-18 12:08:12 +01:00
isUnknown
50f81269ac Feat: Home récupère subtitle et CTA depuis les données Kirby
- Renommage des champs blueprint : cta_text → ctaText, cta_link → ctaLink
- Template home.json.php : expose ctaText et ctaPath (id de page Kirby)
- Home.svelte : suppression des traductions en dur, lecture de data.hero

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-18 12:08:08 +01:00
isUnknown
51eee10c5a Refactor: déplacer router et animations hors de state/
- src/state/router.js → src/router/index.js
- src/state/animations.js → src/utils/animations.js
- Ajout des alias @router et @utils dans vite.config.js
- Mise à jour des imports dans Header.svelte et main.js

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-18 12:08:03 +01:00
isUnknown
65cfba8c77 Fix: Correction du routage et chargement initial des vues
All checks were successful
Deploy / Deploy to Production (push) Successful in 15s
Router:
- Suppression de l'appel direct à loadPage au démarrage
- router.listen() gère maintenant le chargement initial
- Utilisation de router.run() dans le handler popstate
- Résolution de la 404 sur /.json à la home

App.svelte:
- Attente de pageData avant calcul du template et de la vue
- Renommage de view en View (majuscule requise en Svelte 5)
- Correction de la réactivité des composants dynamiques

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-07 08:38:49 +01:00
isUnknown
9ab6344835 Renommer lib/ en state/ pour plus de clarté
All checks were successful
Deploy / Deploy to Production (push) Successful in 13s
- Renommage du dossier src/lib/ en src/state/
- Mise à jour de l'alias @lib vers @state dans vite.config.js
- Suppression de l'alias @stores devenu obsolète
- Mise à jour de tous les imports dans les composants et vues

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-07 08:26:28 +01:00
isUnknown
a12c2df8f9 Upgrade vers Svelte 5 et reproduction de la page d'accueil
- Upgrade : Svelte 5.0.0, Vite 7.0.4, @sveltejs/vite-plugin-svelte 6.0.0
- Migration syntaxe Svelte 5 : $derived, $props(), onclick, mount()
- Navbar identique au site source avec logo GIF et menu animé
- Page Home avec vidéo plein écran et lignes verticales
- CSS modulaire organisé en fichiers séparés (variables, fonts, layout, buttons, etc.)
- Assets copiés : fonts Danzza, vidéos, icônes

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-07 07:52:16 +01:00
isUnknown
cbe89acb21 Migration vers architecture Svelte + Kirby inspirée de design-to-pack
- Mise en place de Svelte 4 avec Vite pour le frontend (SPA)
- Simplification des templates PHP (header/footer minimalistes)
- Création de templates JSON pour API (home, about, expertise, portfolio, jouer, game, blog, article, project)
- Ajout d'un controller de site pour définir genericData globalement
- Structure des stores Svelte (page, navigation, locale, site)
- Router avec navaid pour navigation SPA et interception des liens
- Composants layout (Header, Footer, Cursor) et vues de base
- Build Vite vers assets/dist/ (index.js/css)
- Header PHP détecte assets/dist pour basculer dev/prod

Architecture fonctionnelle de base établie, à améliorer et compléter.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-06 16:30:15 +01:00