Files
Portfolio-Game/frontend/nuxt.config.ts
skycel 4a7fba5999 feat(frontend): carte interactive desktop avec Konva.js
Story 3.6 : Carte interactive desktop (Konva.js)
- Installation de konva et vue-konva
- Configuration nuxt.config.ts pour transpile Konva
- Création mapZones.ts avec 5 zones et connexions
- Composant InteractiveMap.client.vue :
  - Canvas Konva avec zones cliquables
  - États visuels (visité/non visité/verrouillé)
  - Tooltip au hover avec statut
  - Marqueur de position animé
  - Navigation clavier (Tab + Enter)
  - Légende interactive
- Traductions map.* FR/EN
- Lazy-loading client-only (.client.vue)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-07 04:18:54 +01:00

75 lines
1.8 KiB
TypeScript

export default defineNuxtConfig({
devtools: { enabled: true },
ssr: true,
future: {
compatibilityVersion: 4,
},
modules: [
'@nuxtjs/i18n',
'@pinia/nuxt',
'@nuxt/image',
'@nuxtjs/sitemap',
],
css: ['~/assets/css/main.css', '~/assets/css/transitions.css'],
postcss: {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
},
i18n: {
locales: [
{ code: 'fr', iso: 'fr-FR', file: 'fr.json', name: 'Français' },
{ code: 'en', iso: 'en-US', file: 'en.json', name: 'English' },
],
defaultLocale: 'fr',
strategy: 'prefix_except_default',
lazy: true,
langDir: '../i18n/',
detectBrowserLanguage: false,
customRoutes: 'config',
pages: {
'projets/index': { en: '/projects' },
'projets/[slug]': { en: '/projects/[slug]' },
'competences': { en: '/skills' },
'temoignages': { en: '/testimonials' },
'parcours': { en: '/journey' },
'contact': { en: '/contact' },
'resume': { en: '/resume' },
},
baseUrl: process.env.NUXT_PUBLIC_SITE_URL || 'https://skycel.fr',
},
app: {
head: {
link: [
{ rel: 'icon', type: 'image/svg+xml', href: '/favicon.svg' },
],
},
pageTransition: { name: 'page', mode: 'out-in' },
layoutTransition: { name: 'layout', mode: 'out-in' },
},
runtimeConfig: {
public: {
apiUrl: process.env.NUXT_PUBLIC_API_URL || 'http://localhost:8000/api',
apiKey: process.env.NUXT_PUBLIC_API_KEY || '',
siteUrl: process.env.NUXT_PUBLIC_SITE_URL || 'https://skycel.fr',
githubUrl: process.env.NUXT_PUBLIC_GITHUB_URL || 'https://git.araneite.dev/skycel',
linkedinUrl: process.env.NUXT_PUBLIC_LINKEDIN_URL || '',
},
},
compatibilityDate: '2025-01-01',
build: {
transpile: ['konva', 'vue-konva'],
},
})