25 lines
687 B
TypeScript
25 lines
687 B
TypeScript
import { Elysia } from "elysia";
|
|
import { cors } from "@elysiajs/cors";
|
|
import { ingest } from "./routes/pings";
|
|
import { monitors } from "./routes/monitors";
|
|
import { account } from "./routes/auth";
|
|
import { internal } from "./routes/internal";
|
|
import { dashboard } from "./routes/dashboard";
|
|
import { migrate } from "./db";
|
|
|
|
await migrate();
|
|
|
|
const app = new Elysia()
|
|
.use(cors({
|
|
origin: process.env.CORS_ORIGINS?.split(",") ?? ["https://pingql.com", "https://api.pingql.com"],
|
|
credentials: true,
|
|
}))
|
|
.use(dashboard)
|
|
.use(account)
|
|
.use(monitors)
|
|
.use(ingest)
|
|
.use(internal)
|
|
.listen(3000);
|
|
|
|
console.log(`PingQL running at http://localhost:${app.server?.port}`);
|