-
-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathserver.ts
More file actions
26 lines (20 loc) · 870 Bytes
/
Copy pathserver.ts
File metadata and controls
26 lines (20 loc) · 870 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import { createRequestHandler } from '@react-router/express';
import express from 'express';
const { NODE_ENV, SHLINK_DASHBOARD_PORT = '3005' } = process.env;
const isProd = NODE_ENV === 'production';
const viteDevServer = isProd
? null
: await import('vite').then((vite) =>
vite.createServer({
server: { middlewareMode: true },
}),
);
const app = express();
app.use(viteDevServer ? viteDevServer.middlewares : express.static('client'));
const build = viteDevServer
? () => viteDevServer.ssrLoadModule('virtual:react-router/server-build')
: // @ts-expect-error This code branch is used only when that file is built
await import('./server/index.js');
app.all('*splat', createRequestHandler({ build }));
const port = Number(SHLINK_DASHBOARD_PORT);
app.listen(port, () => console.log(`App listening on http://localhost:${port}`));