feat: PC1 scaffolding Astro 6 + Vue islands + Tailwind 4 + Embla swipe
Initial structure for page-cerveau: - Astro 6.3.1 + @astrojs/vue 6.0.1 + Vue 3.5 - Tailwind 4 via @tailwindcss/vite (vs Tailwind 3.4 in prompt; @astrojs/tailwind incompatible with Astro 6 peer deps) - Embla Carousel Vue for mobile swipe (3 strict positions) - src/components/astro/ : 5 placeholder components (Col*, HamburgerMenu, PopupOnboarding) - src/components/vue/ : SwipeContainer + 3 placeholder islands - src/layouts/BaseLayout.astro - src/pages/index.astro (3 cols desktop ; SwipeContainer mobile) + manifeste.astro placeholder - public/data/ ready for PC3 (carte-o.json) + PC6 (journal.json) Build OK (0 errors, 0 warnings); dev server tested localhost:4321 with all components rendering. Note: Astro version is 6.3.1 (latest stable) instead of 5.x specified in prompt; 6.x is current LTS.
This commit is contained in:
29
src/pages/index.astro
Normal file
29
src/pages/index.astro
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
import BaseLayout from '../layouts/BaseLayout.astro';
|
||||
import ColJournal from '../components/astro/ColJournal.astro';
|
||||
import ColCentre from '../components/astro/ColCentre.astro';
|
||||
import ColInsta from '../components/astro/ColInsta.astro';
|
||||
import SwipeContainer from '../components/vue/SwipeContainer.vue';
|
||||
import HamburgerMenu from '../components/astro/HamburgerMenu.astro';
|
||||
import PopupOnboarding from '../components/astro/PopupOnboarding.astro';
|
||||
---
|
||||
<BaseLayout title="trans-former.fr">
|
||||
<HamburgerMenu />
|
||||
<PopupOnboarding />
|
||||
|
||||
<!-- Desktop : grid 3 colonnes -->
|
||||
<div class="hidden md:grid md:grid-cols-[320px_1fr_320px] h-screen overflow-hidden">
|
||||
<aside class="border-r border-neutral-200 overflow-y-auto"><ColJournal /></aside>
|
||||
<main class="overflow-hidden"><ColCentre /></main>
|
||||
<aside class="border-l border-neutral-200 overflow-y-auto"><ColInsta /></aside>
|
||||
</div>
|
||||
|
||||
<!-- Mobile : SwipeContainer Vue island -->
|
||||
<div class="md:hidden h-screen overflow-hidden">
|
||||
<SwipeContainer client:load>
|
||||
<ColJournal slot="left" />
|
||||
<ColCentre slot="center" />
|
||||
<ColInsta slot="right" />
|
||||
</SwipeContainer>
|
||||
</div>
|
||||
</BaseLayout>
|
||||
9
src/pages/manifeste.astro
Normal file
9
src/pages/manifeste.astro
Normal file
@@ -0,0 +1,9 @@
|
||||
---
|
||||
import BaseLayout from '../layouts/BaseLayout.astro';
|
||||
---
|
||||
<BaseLayout title="Manifeste — trans-former.fr">
|
||||
<main class="max-w-2xl mx-auto p-6">
|
||||
<h1 class="text-2xl font-semibold mb-4">Manifeste</h1>
|
||||
<p class="text-sm text-neutral-500">Placeholder — PC2 importe le contenu manifeste depuis astro-site existant.</p>
|
||||
</main>
|
||||
</BaseLayout>
|
||||
Reference in New Issue
Block a user