feat: Setup projet Classeo avec infrastructure Docker et architecture DDD

Configure l'environnement de développement complet avec Docker Compose,
structure DDD 4 Bounded Contexts, et pipeline CI/CD GitHub Actions.

Corrections compatibilité CI:
- Symfony 8 nécessite monolog-bundle ^4.0 (la v3.x ne supporte que jusqu'à Symfony 7)
- ESLint v9 nécessite flat config (eslint.config.js) - le format .eslintrc.cjs est obsolète
This commit is contained in:
2026-01-30 09:55:58 +01:00
parent ddefa927c7
commit 6da5996340
125 changed files with 10032 additions and 0 deletions

74
frontend/vite.config.ts Normal file
View File

@@ -0,0 +1,74 @@
import { sveltekit } from '@sveltejs/kit/vite';
import { SvelteKitPWA } from '@vite-pwa/sveltekit';
import { defineConfig } from 'vitest/config';
export default defineConfig({
plugins: [
sveltekit(),
SvelteKitPWA({
srcDir: 'src',
mode: 'development',
strategies: 'generateSW',
scope: '/',
base: '/',
manifest: {
name: 'Classeo',
short_name: 'Classeo',
description: 'Application de gestion scolaire',
theme_color: '#3b82f6',
background_color: '#ffffff',
display: 'standalone',
start_url: '/',
icons: [
{
src: 'pwa-192x192.png',
sizes: '192x192',
type: 'image/png'
},
{
src: 'pwa-512x512.png',
sizes: '512x512',
type: 'image/png'
},
{
src: 'pwa-512x512.png',
sizes: '512x512',
type: 'image/png',
purpose: 'any maskable'
}
]
},
workbox: {
globPatterns: ['**/*.{js,css,html,ico,png,svg,webp,woff,woff2}']
},
devOptions: {
enabled: false,
type: 'module',
navigateFallback: '/'
}
// eslint-disable-next-line @typescript-eslint/no-explicit-any
}) as any
],
test: {
include: ['src/**/*.{test,spec}.{js,ts}', 'tests/**/*.{test,spec}.{js,ts}'],
globals: true,
environment: 'jsdom',
server: {
deps: {
inline: [/svelte/]
}
},
alias: {
$lib: '/src/lib',
$app: '/node_modules/@sveltejs/kit/src/runtime/app'
}
},
resolve: {
conditions: ['browser']
},
server: {
host: '0.0.0.0',
port: 5173,
strictPort: true
}
});