Gesamte Mono-Repo des Baukastens (alle apps/clients, examples/tests und packages)
Bearbeiten | Blame | Historie | Raw

_logic_layout_1_vite

Experimental Vite-based equivalent of _logic_layout_1. Builds the same app
into ../bin_layout_1_vite/ (registered in projects.json) so it can be
served side-by-side with the webpack build for A/B comparison.

Commands

pnpm install
pnpm run build     # production build → ../bin_layout_1_vite/
pnpm run dev       # Vite dev server (for local iteration, does NOT use the token loader)

Layout parity with webpack

Aspect webpack (_logic_layout_1) Vite (_logic_layout_1_vite)
Entry src/script/index.ts index.htmlsrc/script/index.ts
Output dir ../bin_layout_1/ ../bin_layout_1_vite/
Public base /webui/t/layout_1/ /webui/t/layout_1_vite/
Hashed JS/CSS fv.[hash].js / fv.[hash].css same
Font/image output images/[hash][ext] same
src/config/bin/config/ copy-webpack-plugin copyConfigPlugin in vite.config.ts
Token loader script post-build patch from webpack.config.*.js tokenInjectPlugin in vite.config.ts (same runtime script)
Service worker snippet injected by webpack plugin injected by tokenInjectPlugin
iPad font force-load same same

Notes

  • Only .sass / .scss files imported normally are bundled into the emitted
    CSS file. Imports with the ?inline query string return the CSS as a string
    — used by @dh-software/furnview-components for its Shadow-DOM static styles arrays.
  • The Vite dev server does not apply the token loader — it loads
    modules through Vite's normal HMR pipeline. Use it for quick component
    iteration; run pnpm build + the regular webui server for integration tests
    against a real token.
  • locales/locales.xlsx is kept next to the build but there is no Vite
    equivalent of the WebpackLocalesCreationPlugin yet; if you need locale
    compilation, run the webpack build once or port that plugin later.