feat(phase-c): Vite + Svelte 5 Infrastruktur + erste 2 Panels migriert
- frontend/ eingerichtet: Vite 6, Svelte 5 (Runes), TypeScript - Stores: status/jobs/system mit $state-Runes (status.svelte.ts etc.) - main.ts ersetzt main.js: bundelt Legacy-Panels (overview/models/server/ jobs/cookbook/connect) + mountet neue Svelte-Panels (guides/news) - GuidesPanel.svelte: statischer Guide mit Akkordeon-Tutorials + Konzept-Grid - NewsPanel.svelte: reaktives Newsboard mit API-Fetch + Upgrade-Vorschlaegen - Vite-Output: static/dist/main.js (committet, kein Build auf dem Server) - index.html: laedt jetzt static/dist/main.js statt static/js/main.js - Build: 118 Module → 134 kB (gzip: 44 kB) Naechste Schritte: Overview → Jobs → Server → Models → Cookbook migrieren. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
import { defineConfig } from 'vite'
|
||||
import { svelte } from '@sveltejs/vite-plugin-svelte'
|
||||
import { resolve } from 'path'
|
||||
|
||||
export default defineConfig({
|
||||
plugins: [svelte()],
|
||||
base: '/static/dist/',
|
||||
build: {
|
||||
outDir: resolve(__dirname, '../static/dist'),
|
||||
emptyOutDir: true,
|
||||
rollupOptions: {
|
||||
input: resolve(__dirname, 'src/main.ts'),
|
||||
output: {
|
||||
entryFileNames: 'main.js',
|
||||
chunkFileNames: '[name].js',
|
||||
assetFileNames: '[name][extname]',
|
||||
// Alles in eine Datei — kein dynamisches Chunking für einfaches Deploy
|
||||
manualChunks: undefined,
|
||||
},
|
||||
},
|
||||
},
|
||||
resolve: {
|
||||
alias: {
|
||||
'@core': resolve(__dirname, '../static/js/core'),
|
||||
'@panels': resolve(__dirname, '../static/js/panels'),
|
||||
},
|
||||
},
|
||||
})
|
||||
Reference in New Issue
Block a user