import "dotenv/config"; import { createApp } from "./app.js"; import { prisma } from "./lib/prisma.js"; const PORT = Number(process.env.PORT ?? 8080); async function main() { // Verify DB connectivity on startup try { await prisma.$connect(); console.log("Database connected"); } catch (err) { console.error("Failed to connect to database:", err); process.exit(1); } const app = createApp(); const server = app.listen(PORT, () => { console.log(`POS API running on port ${PORT} [${process.env.NODE_ENV ?? "development"}]`); }); const shutdown = async () => { console.log("Shutting down..."); server.close(async () => { await prisma.$disconnect(); process.exit(0); }); }; process.on("SIGTERM", shutdown); process.on("SIGINT", shutdown); } main();