mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-17 12:16:56 +02:00
- Serveur Rust (server-rs/, axum + sqlx) : les 148 adresses de l'API, l'interface, les migrations de démarrage et les tâches de fond ; même comportement que Node (banc : 2027 cas, 0 écart hors écarts déclarés USERS-02, RAPPRO-21, R4, R5). - Node retiré : server/, dépendances serveur, image Docker sans Node (51 Mo), docker-compose à un seul service applicatif. - R4 : écritures d'un autre site refusées (Sec-Fetch-Site / Origin). - R5 : « aujourd'hui » et sauvegarde automatique à l'heure de Paris. - R6 : mainteneur dans .github/CODEOWNERS. - Menu latéral : Accueil puis Calendrier en tête. - Plan et état : docs/PLAN-MIGRATION-RUST.md. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ke2qyS8rgacP3ap5iezDbM
65 lines
2.2 KiB
TypeScript
65 lines
2.2 KiB
TypeScript
import { defineConfig } from "vite";
|
|
import react from "@vitejs/plugin-react";
|
|
import path from "path";
|
|
import runtimeErrorOverlay from "@replit/vite-plugin-runtime-error-modal";
|
|
|
|
export default defineConfig({
|
|
plugins: [
|
|
react(),
|
|
runtimeErrorOverlay(),
|
|
...(process.env.NODE_ENV !== "production" &&
|
|
process.env.REPL_ID !== undefined
|
|
? [
|
|
await import("@replit/vite-plugin-cartographer").then((m) =>
|
|
m.cartographer(),
|
|
),
|
|
]
|
|
: []),
|
|
],
|
|
resolve: {
|
|
alias: {
|
|
"@": path.resolve(import.meta.dirname, "client", "src"),
|
|
"@shared": path.resolve(import.meta.dirname, "shared"),
|
|
},
|
|
},
|
|
// En production, les console.log/debug de debug sont retirés du bundle par
|
|
// le minifieur (console.warn et console.error sont conservés). En dev, tout
|
|
// reste visible.
|
|
esbuild: {
|
|
pure: process.env.NODE_ENV === "production" ? ["console.log", "console.debug"] : [],
|
|
},
|
|
root: path.resolve(import.meta.dirname, "client"),
|
|
build: {
|
|
outDir: path.resolve(import.meta.dirname, "dist/public"),
|
|
emptyOutDir: true,
|
|
rollupOptions: {
|
|
output: {
|
|
// Sépare les grosses dépendances stables du code applicatif :
|
|
// elles ne changent qu'aux montées de version et restent donc en
|
|
// cache navigateur entre deux déploiements, au lieu de faire
|
|
// retélécharger 1,7 Mo à chaque mise en production.
|
|
// recharts n'est volontairement pas listé ici : un chunk manuel
|
|
// embarque aussi les dépendances partagées (clsx...) importées par
|
|
// l'application, ce qui le faisait précharger dès l'écran de
|
|
// connexion. Sans entrée, il n'est téléchargé qu'avec la page
|
|
// Statistiques (chargée à la demande).
|
|
manualChunks: {
|
|
"vendor-react": ["react", "react-dom", "wouter"],
|
|
"vendor-query": ["@tanstack/react-query"],
|
|
"vendor-icons": ["lucide-react"],
|
|
},
|
|
},
|
|
},
|
|
},
|
|
server: {
|
|
// En développement, l'API est servie par le serveur Rust (npm run dev:server)
|
|
proxy: {
|
|
"/api": "http://localhost:3000",
|
|
},
|
|
fs: {
|
|
strict: true,
|
|
deny: ["**/.*"],
|
|
},
|
|
},
|
|
});
|