aboutsummaryrefslogtreecommitdiffhomepage
path: root/esbuild.mjs
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2025-12-06 19:06:33 +0900
committernsfisis <nsfisis@gmail.com>2025-12-06 19:24:07 +0900
commit39deb471d976d863d2ec803f908025a2366f1486 (patch)
tree5aee9cc44b21d92a0d4a7c9f33fe487acc732d92 /esbuild.mjs
parentc65609278df8a95ad82acc852e224607069859b4 (diff)
downloadkioku-39deb471d976d863d2ec803f908025a2366f1486.tar.gz
kioku-39deb471d976d863d2ec803f908025a2366f1486.tar.zst
kioku-39deb471d976d863d2ec803f908025a2366f1486.zip
build(server): add Dockerfiles
Add build pipeline with esbuild for production bundling. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Diffstat (limited to 'esbuild.mjs')
-rw-r--r--esbuild.mjs23
1 files changed, 23 insertions, 0 deletions
diff --git a/esbuild.mjs b/esbuild.mjs
new file mode 100644
index 0000000..f355f99
--- /dev/null
+++ b/esbuild.mjs
@@ -0,0 +1,23 @@
+import * as esbuild from "esbuild";
+
+await esbuild.build({
+ entryPoints: ["src/server/index.ts"],
+ bundle: true,
+ platform: "node",
+ target: "node22",
+ outfile: "dist/server/index.js",
+ format: "esm",
+ sourcemap: true,
+ external: [
+ // Node.js built-in modules
+ "node:*",
+ // Native modules that can't be bundled
+ "argon2",
+ "pg-native",
+ ],
+ banner: {
+ js: "import { createRequire } from 'module'; const require = createRequire(import.meta.url);",
+ },
+});
+
+console.log("Server build complete: dist/server/index.js");