This document explains the configuration options available in the chat-app build scripts.
Key changes:
compiled-*.css instead of chat-app-*.cssCONFIG objectconst CONFIG = {
DESIGN_SYSTEM_SOURCE: "../../../../styles",
DESIGN_SYSTEM_DEST: "./design-system",
APP_STYLES_SCSS: "./app.scss",
OUTPUT_PREFIX: "./compiled", // Generic name for easy filtering
MAX_CHUNK_SIZE: 60 * 1024,
APP_NAME: "chat-app",
};
Key changes:
CSS_MODE config option: "build" or "link""build" mode: Uses locally compiled CSS (production)"link" mode: Links to prebuilt design system + local custom styles (testing)const CONFIG = {
SRC_DIR: "./src/html",
OUTPUT_FILE: "./index.html",
CSS_MODE: "build", // Change to "link" for testing
// When CSS_MODE is "link":
PREBUILT_DESIGN_SYSTEM_CSS: "/v2/frontend/styles/theme.css",
LOCAL_CUSTOM_CSS: "/frontend/styles/app.css",
// When CSS_MODE is "build":
BUILT_CSS_PREFIX: "compiled", // Must match build.ts OUTPUT_PREFIX
};
deno task build
This will:
compiled.css (or compiled-1.css, compiled-2.css, etc.)When to use: Testing changes to your app-specific styles without rebuilding the entire design system.
Change CSS_MODE in build-html.ts:
CSS_MODE: "link",
Run HTML build only:
deno task build:html
Your index.html will now link to:
/v2/frontend/styles/theme.css/frontend/styles/app.cssTo ignore compiled CSS files in your IDE search:
VS Code / Cursor:
compiled-*.css to exclude: -compiled-*.css.gitignore if you don't want to version themGrep/Ripgrep:
rg "pattern" --glob "!compiled-*.css"
Each app can customize these settings:
OUTPUT_PREFIX: Change output filename (e.g., "app", "styles", "compiled")APP_NAME: Used in comments/metadataCSS_MODE: Toggle between build and link modesPREBUILT_DESIGN_SYSTEM_CSS: Path to your shared design systemLOCAL_CUSTOM_CSS: Path to app-specific stylescompiled-*.css is easier to filter than app-specific names