package.json
Rama master · réplica de lectura del repositorio original.
{
"name": "anthias",
"version": "2026.11.0",
"scripts": {
"_build_note": "Alpine evaluates @click expressions against a `with(scope)`-style closure at runtime. Bun's --minify-identifiers renames internal Alpine vars (and our handler names in home.ts) in ways that break that lookup — silently. Stick to whitespace+syntax minification, which trims the bundle by half without touching identifiers.",
"build:vendor": "bun build ./src/anthias_server/app/static/src/vendor.ts --outfile=./src/anthias_server/app/static/dist/js/vendor.js --target=browser --minify-whitespace --minify-syntax",
"build:home": "bun build ./src/anthias_server/app/static/src/home.ts --outfile=./src/anthias_server/app/static/dist/js/home.js --target=browser --minify-whitespace --minify-syntax",
"build:splash": "bun build ./src/anthias_server/app/static/src/splash.ts --outfile=./src/anthias_server/app/static/dist/js/splash.js --target=browser --minify-whitespace --minify-syntax",
"build:css:tailwind": "bunx @tailwindcss/cli -i src/anthias_server/app/static/src/tailwind.css -o src/anthias_server/app/static/dist/css/tailwind.css --minify",
"build:css:components": "bunx sass src/anthias_server/app/static/sass/anthias.scss src/anthias_server/app/static/dist/css/anthias.css --load-path=node_modules --style=compressed --quiet-deps --silence-deprecation=import,global-builtin,color-functions,if-function",
"build:css": "bun run build:css:tailwind && bun run build:css:components",
"build:fonts": "mkdir -p src/anthias_server/app/static/dist/fonts src/anthias_server/app/static/dist/css/fonts && cp node_modules/@fontsource/plus-jakarta-sans/files/plus-jakarta-sans-latin-400-normal.woff2 node_modules/@fontsource/plus-jakarta-sans/files/plus-jakarta-sans-latin-700-normal.woff2 src/anthias_server/app/static/dist/fonts/ && cp node_modules/@tabler/icons-webfont/dist/tabler-icons.css src/anthias_server/app/static/dist/css/tabler-icons.css && cp node_modules/@tabler/icons-webfont/dist/fonts/tabler-icons.woff2 node_modules/@tabler/icons-webfont/dist/fonts/tabler-icons.woff node_modules/@tabler/icons-webfont/dist/fonts/tabler-icons.ttf src/anthias_server/app/static/dist/css/fonts/",
"build": "bun run build:vendor && bun run build:home && bun run build:splash && bun run build:css && bun run build:fonts",
"_email_note": "mjml is pinned through bunx rather than added to devDependencies. The bun-builder stage in docker/Dockerfile.server.j2 runs `bun install --frozen-lockfile` for every board image it builds, and a newsletter template has no business putting ~50 packages on that path. The version pin gives the same reproducibility a lockfile entry would. Not part of `build`, because nothing the device serves comes out of it.",
"build:email": "mkdir -p emails/dist && bunx mjml@4.15.3 emails/newsletter.mjml -o emails/dist/newsletter.html --config.validationLevel=strict",
"dev:vendor": "bun build ./src/anthias_server/app/static/src/vendor.ts --outfile=./src/anthias_server/app/static/dist/js/vendor.js --target=browser --sourcemap=linked --watch",
"dev:home": "bun build ./src/anthias_server/app/static/src/home.ts --outfile=./src/anthias_server/app/static/dist/js/home.js --target=browser --sourcemap=linked --watch",
"dev:splash": "bun build ./src/anthias_server/app/static/src/splash.ts --outfile=./src/anthias_server/app/static/dist/js/splash.js --target=browser --sourcemap=linked --watch",
"dev:css:tailwind": "bunx @tailwindcss/cli -i src/anthias_server/app/static/src/tailwind.css -o src/anthias_server/app/static/dist/css/tailwind.css --watch",
"dev:css:components": "bunx sass src/anthias_server/app/static/sass/anthias.scss src/anthias_server/app/static/dist/css/anthias.css --load-path=node_modules --watch --quiet-deps --silence-deprecation=import,global-builtin,color-functions,if-function",
"dev": "bash -c 'bun run dev:vendor & v=$!; bun run dev:home & h=$!; bun run dev:splash & sp=$!; bun run dev:css:tailwind & tw=$!; bun run dev:css:components & css=$!; trap \"kill $v $h $sp $tw $css 2>/dev/null\" EXIT INT TERM; wait -n; exit $?'",
"lint:check": "echo 'no-op: TS lint not configured for the htmx/alpine entrypoint'",
"lint:fix": "echo 'no-op'",
"format:check": "echo 'no-op'",
"format:fix": "echo 'no-op'",
"test": "bun test"
},
"dependencies": {
"@fontsource/plus-jakarta-sans": "^5.3.0",
"@tabler/icons-webfont": "^3.49.0",
"alpinejs": "^3.17.5",
"flatpickr": "^4.6.13",
"htmx.org": "^2.0.11",
"leaflet": "^1.9.4",
"qrcode": "^1.5.4"
},
"devDependencies": {
"@happy-dom/global-registrator": "^21.0.4",
"@tailwindcss/cli": "^4.3.3",
"@tailwindcss/forms": "^0.5.11",
"@types/leaflet": "^1.9.22",
"@types/qrcode": "^1.5.6",
"happy-dom": "^21.0.4",
"sass": "^1.106.1",
"tailwindcss": "^4.3.3",
"typescript": "^7.0.2"
}
}