// Package jsruntime is the JS/TS tree of kjol: the Solid component kit, the // vendored Solid runtime, the FontAwesome SVG source kit, and the generic TS // scaffolding (auth, hooks, ssr, utils). // // The shared Tailwind design tokens are NOT here — they live in kjol/tw as the // extension layer (tw/kjol_theme.css), which the Tailwind engine layers between // its own defaults and an app's brand. See tw.CompileApp. // // It holds no Go beyond this file. The package exists so the tree has a stable // home inside the Go module rather than a sibling directory the build has to go // hunting for — kjol/go is the module root, and everything a consuming app needs // now lives under it. // // Nothing here is compiled by Go. The tree is built by kjol/jsbundler (TSX -> // Solid -> esbuild) and kjol/tw (Tailwind v4), both of which read it off disk; // an app points the bundler at this directory: // // jsbundler.Configure(jsbundler.Config{ // AppFrontend: "frontend", // WebDir: "./kjol/go/jsruntime", // }) // // Layout: // // uikit/ Solid .tsx component kit. Apps import components as @ui/*. // runtime/ vendored Solid runtime + vendor.json (base entrypoints). The app // merges its own vendor.json (chart.js, pdf-lib, ...) on top; kjol's // solid-js must resolve FIRST so there is a single reactive instance. // icons/ FontAwesome SVG source kit. The bundler scans usage and generates a // per-app registry (@appgen/faIcons); the registry is app-owned and is // not committed here. An app's own frontend/icons is searched first, so // an app with a fuller kit keeps it (see jsbundler.iconsDirs). // // The rest (auth/ hooks/ ssr/ utils/ env.ts basic.ts finance.ts superfun.ts) is // generic TS scaffolding; apps import it as @kjol/*. Concrete permission // constants stay app-side. package jsruntime