# 🚀 Astro Starter Kit Un starter kit moderne et Ă©lĂ©gant, optimisĂ© pour la performance et le SEO. Construit avec **Astro**, **React** et **Tailwind CSS**. ## ✹ FonctionnalitĂ©s - ⚡ **Ultra rapide** : GĂ©nĂ©ration statique avec Astro - ⚛ **React** : Hydratation partielle intelligente (Islands Architecture) - 🎹 **Tailwind CSS** : Styling moderne et responsive - 🔍 **SEO optimisĂ©** : Meta tags et structure HTML5 - 🐳 **Docker ready** : Build multi-stage optimisĂ© ## 📩 Structure du projet ``` / ├── src/ │ ├── layouts/ │ │ └── BaseLayout.astro # Layout de base avec SEO │ ├── components/ │ │ └── InteractiveCounter.jsx # Composant React dĂ©mo │ ├── pages/ │ │ └── index.astro # Page d'accueil │ └── styles/ │ └── global.css # Styles Tailwind ├── public/ ├── Dockerfile # Build multi-stage ├── docker-compose.yml └── astro.config.mjs ``` ## 🚀 DĂ©marrage rapide ### DĂ©veloppement local ```bash # Installer les dĂ©pendances pnpm install # Lancer le serveur de dev pnpm run dev ``` Le site sera accessible sur `http://localhost:4321` ### Build de production ```bash # GĂ©nĂ©rer les fichiers statiques pnpm run build # PrĂ©visualiser le build pnpm run preview ``` ### Docker ```bash # Build et lancement avec Docker Compose docker compose up -d --build # Le site sera accessible sur http://localhost:8080 ``` ## 🎯 Concepts clĂ©s ### Hydratation partielle (Islands Architecture) Astro envoie **zĂ©ro JavaScript par dĂ©faut**. Les composants React ne sont hydratĂ©s que si vous utilisez une directive `client:*` : ```astro ``` ### Directives client disponibles - `client:load` : Hydrate immĂ©diatement - `client:idle` : Hydrate quand le navigateur est inactif - `client:visible` : Hydrate quand visible dans le viewport - `client:media` : Hydrate selon une media query ## 📝 Personnalisation ### Ajouter une nouvelle page CrĂ©ez un fichier `.astro` dans `src/pages/` : ```astro --- import BaseLayout from '../layouts/BaseLayout.astro'; ---

Contenu de ma page

``` ### Ajouter un composant React CrĂ©ez un fichier `.jsx` dans `src/components/` et utilisez-le avec une directive `client:*` pour l'interactivitĂ©. ## đŸ› ïž Technologies - [Astro](https://astro.build) - Framework web moderne - [React](https://react.dev) - BibliothĂšque UI - [Tailwind CSS](https://tailwindcss.com) - Framework CSS utility-first - [Docker](https://www.docker.com) - Containerisation