Files
decision/frontend/nuxt.config.ts
Yvv 403b94fa2c Sprint 5 : integration et production -- securite, performance, API publique, documentation
Backend: rate limiter, security headers, blockchain cache service avec RPC,
public API (7 endpoints read-only), WebSocket auth + heartbeat, DB connection
pooling, structured logging, health check DB. Frontend: API retry/timeout,
WebSocket auth + heartbeat + typed events, notifications toast, mobile hamburger
+ drawer, error boundary, offline banner, loading skeletons, dashboard enrichi.
Documentation: guides utilisateur complets (demarrage, vote, sanctuaire, FAQ 30+),
guide deploiement, politique securite. 123 tests, 155 fichiers.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 15:12:50 +01:00

45 lines
1.5 KiB
TypeScript

export default defineNuxtConfig({
compatibilityDate: '2025-07-15',
ssr: false,
devtools: { enabled: true },
devServer: { port: 3002 },
components: [{ path: '~/components', pathPrefix: false }],
modules: [
'@nuxt/ui',
'@pinia/nuxt',
'@unocss/nuxt',
'@vueuse/nuxt',
],
app: {
head: {
htmlAttrs: { lang: 'fr' },
meta: [
{ name: 'viewport', content: 'width=device-width, initial-scale=1, maximum-scale=5' },
{ name: 'description', content: 'Plateforme de decisions collectives pour la communaute Duniter/G1' },
{ name: 'theme-color', content: '#16a34a' },
{ name: 'apple-mobile-web-app-capable', content: 'yes' },
{ name: 'apple-mobile-web-app-status-bar-style', content: 'default' },
{ name: 'mobile-web-app-capable', content: 'yes' },
{ property: 'og:title', content: 'Glibredecision' },
{ property: 'og:description', content: 'Decisions collectives pour la communaute Duniter/G1' },
{ property: 'og:type', content: 'website' },
],
title: 'Glibredecision',
link: [
{ rel: 'stylesheet', href: 'https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.css' },
],
script: [
{ src: 'https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.js', defer: true },
],
},
},
runtimeConfig: {
public: {
apiBase: process.env.NUXT_PUBLIC_API_BASE || 'http://localhost:8002/api/v1',
},
},
nitro: {
compressPublicAssets: true,
},
})