File size: 1,145 Bytes
d8ce00b
 
 
 
 
 
 
 
 
 
e5ef607
185ec1f
d8ce00b
 
222dbfc
0000bf5
389ef0e
d747060
0000bf5
389ef0e
 
d8ce00b
0000bf5
d8ce00b
 
389ef0e
d8ce00b
 
 
e5ef607
 
 
 
 
 
 
 
 
185ec1f
 
e5ef607
bdc2f7d
e5ef607
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import cors from "cors";
import dotenv from "dotenv";
import express from "express";
import pinoHttp from "pino-http";
import swaggerUi from "swagger-ui-express";

import { APP_CONFIG } from "./config/app.config";
import rootRouter from "./routes/root.routes";
import { logger } from "./utils/logger";
import { swaggerDocs } from "./utils/swagger";
import privateRouter from "./routes/private.routes";
import { setupCronJobs } from "./shared/services/cronJobs";

dotenv.config();

const app = express();

app.use(pinoHttp({ logger }));

app.use(cors());

app.use(express.json());

app.use("/api-docs", swaggerUi.serve, swaggerUi.setup(swaggerDocs));
app.use("/", rootRouter);

app.listen(APP_CONFIG.port, () => {
  logger.info(`Server is running at ${APP_CONFIG.appURL} in ${APP_CONFIG.env} mode`);
});

// Private server setup
const privateServer = express();

privateServer.use(cors());
privateServer.use(express.json());

privateServer.use("/private", privateRouter);

setupCronJobs();

privateServer.listen(APP_CONFIG.privatePort, () => {
  logger.info(`Private server is running at ${APP_CONFIG.privateURL} in ${APP_CONFIG.env} mode`);
});