aspireves.org/astro.config.mjs
Jalil Arfaoui 3416a6d492 Intégrer StoryBlok comme CMS headless
- Ajouter @storyblok/astro, @astrojs/node et vite-plugin-mkcert
- Créer src/lib/storyblok.ts (fetch + mapping des blocs spectacle/evenement)
- Ajouter le middleware StoryBlok pour le live preview
- Basculer les pages spectacles, agenda et accueil sur l'API StoryBlok
- Config conditionnelle SSG/SSR via STORYBLOK_IS_PREVIEW (production statique, preview SSR avec visual editor)
- Version draft/published selon l'environnement
- storyblokEditable sur les composants pour le click-to-edit
- HTTPS via mkcert en mode preview
2026-03-05 22:22:32 +01:00

26 lines
757 B
JavaScript

import { defineConfig } from 'astro/config';
import { loadEnv } from 'vite';
import tailwindcss from '@tailwindcss/vite';
import mkcert from 'vite-plugin-mkcert';
import icon from 'astro-icon';
import node from '@astrojs/node';
import { storyblok } from '@storyblok/astro';
const env = loadEnv('', process.cwd(), 'STORYBLOK');
const isPreview = env.STORYBLOK_IS_PREVIEW === 'true';
export default defineConfig({
output: isPreview ? 'server' : 'static',
...(isPreview && { adapter: node({ mode: 'standalone' }) }),
integrations: [
icon(),
storyblok({
accessToken: env.STORYBLOK_TOKEN,
bridge: isPreview,
livePreview: isPreview,
}),
],
vite: {
plugins: [tailwindcss(), ...(isPreview ? [mkcert()] : [])],
},
});