Asset Pipeline Internals
The asset pipeline is mainly handled by:
src/utils/assets.js
src/utils/cssImports.js
src/utils/jsModules.js
Build asset preparation
The build command calls:
prepareBuildAssets(siteConfig)
This performs:
- copy
public/todist/ - copy project assets
- build CSS assets
- build the JavaScript asset graph
- copy the Lucide runtime when present
CSS build
The main CSS entry is:
src/assets/css/app.css
Before writing CSS, Curvea resolves local and alias CSS imports.
If the Tailwind CLI exists in node_modules/.bin, Curvea runs Tailwind with minification.
If Tailwind is not installed, Curvea writes the resolved CSS directly.
JavaScript graph
The JavaScript graph starts from:
src/assets/js
Curvea transforms supported JavaScript module files and rewrites import paths for browser output.
CSS imports in JavaScript
When JavaScript imports CSS, Curvea emits the CSS asset and a proxy JavaScript module that loads the stylesheet in the browser.
Vendor files
When Lucide is installed, Curvea copies its UMD runtime to:
dist/vendor/lucide/lucide.js