| import { rmSync } from "node:fs"; |
| import { build as viteBuild } from "vite"; |
| import { build as esBuild } from "esbuild"; |
|
|
| async function buildAll() { |
| rmSync("dist", { recursive: true, force: true }); |
|
|
| console.info("[INFO] Building client..."); |
| await viteBuild(); |
|
|
| console.info("[INFO] Building server..."); |
| await esBuild({ |
| entryPoints: ["src/server/index.ts"], |
| platform: "node", |
| bundle: true, |
| format: "cjs", |
| outfile: "dist/index.cjs", |
| define: { |
| "process.env.NODE_ENV": '"production"', |
| }, |
| minify: true, |
| logLevel: "info" |
| }); |
| } |
|
|
| buildAll().catch((err) => { |
| console.error(err); |
| process.exit(1); |
| }); |