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>
This commit is contained in:
isUnknown 2026-02-06 16:30:15 +01:00
parent c4456d587c
commit cbe89acb21
53 changed files with 3348 additions and 772 deletions

View file

@ -0,0 +1,73 @@
<script>
import { siteStore } from '@stores/site'
$: siteTitle = $siteStore.title || 'World Game'
$: currentYear = new Date().getFullYear()
</script>
<footer class="footer">
<div class="footer__container">
<div class="footer__brand">
<p class="footer__title">{siteTitle}</p>
<p class="footer__tagline">Play to Engage</p>
</div>
<div class="footer__copyright">
<p>&copy; {currentYear} {siteTitle}. Tous droits réservés.</p>
</div>
</div>
</footer>
<style>
.footer {
background: #000;
color: #fff;
padding: 3rem 2rem 2rem;
margin-top: auto;
}
.footer__container {
max-width: 1400px;
margin: 0 auto;
display: flex;
justify-content: space-between;
align-items: center;
gap: 2rem;
}
.footer__brand {
flex: 1;
}
.footer__title {
font-size: 1.5rem;
font-weight: 700;
margin: 0 0 0.5rem;
}
.footer__tagline {
color: #04fea0;
margin: 0;
font-size: 0.9rem;
}
.footer__copyright {
font-size: 0.85rem;
color: rgba(255, 255, 255, 0.6);
}
.footer__copyright p {
margin: 0;
}
@media (max-width: 768px) {
.footer__container {
flex-direction: column;
text-align: center;
}
.footer__copyright {
order: 2;
}
}
</style>