Files
radio1/server/index-prod.ts
2025-11-21 16:06:20 +03:00

29 lines
726 B
TypeScript

import fs from "node:fs";
import { type Server } from "node:http";
import path from "node:path";
import express, { type Express, type Request } from "express";
import runApp from "./app";
export async function serveStatic(app: Express, server: Server) {
const distPath = path.resolve(import.meta.dirname, "public");
if (!fs.existsSync(distPath)) {
throw new Error(
`Could not find the build directory: ${distPath}, make sure to build the client first`,
);
}
app.use(express.static(distPath));
// fall through to index.html if the file doesn't exist
app.use("*", (_req, res) => {
res.sendFile(path.resolve(distPath, "index.html"));
});
}
(async () => {
await runApp(serveStatic);
})();