import { createRequestHandler } from "@remix-run/express"; import { installGlobals } from "@remix-run/node"; import compression from "compression"; import express from "express"; import morgan from "morgan"; import { fileURLToPath } from "url"; import { dirname, join } from "path"; installGlobals(); const __filename = fileURLToPath(import.meta.url); const __dirname = dirname(__filename); const BUILD_PATH = join(__dirname, "build", "server", "index.js"); const PUBLIC_PATH = join(__dirname, "build", "client"); const app = express(); app.use(compression()); app.disable("x-powered-by"); app.use(morgan("tiny")); app.use( express.static(PUBLIC_PATH, { maxAge: "1h", immutable: true, }) ); app.all( "*", createRequestHandler({ build: await import(BUILD_PATH), }) ); const port = process.env.PORT || 8788; app.listen(port, "0.0.0.0", () => { console.log(`Express server listening on port ${port}`); });