UNPKG

chatstorm

Version:

ChatStorm - Real-Time Chat Server for Your App. ChatStorm is a powerful, lightning-fast Socket.io-based chat server that enables seamless real-time messaging in your application. Whether you're building a messaging app, live chat feature, or a collaborati

55 lines (48 loc) 1.29 kB
const mongoose = require("mongoose"); const http = require("http"); const cors = require("cors"); const express = require("express"); const animatelogger = require("./Config/rainbow"); require("dotenv").config(); let app = express(); app.use(cors()); app.use(express.json()); app.use(express.urlencoded({ extended: true })); app.get("/", async (req, res) => { res.send("Welcome To ChatStorm"); }); let server; try { mongoose.connect(process.env.MONGODB_URL).then(() => { animatelogger("Connected to MongoDB"); const nodeServer = http.createServer(app); require("./Sockets/config")(nodeServer); server = nodeServer.listen(process.env.PORT, "0.0.0.0", () => { console.log(`Listening to port ${process.env.PORT}`); }); }); } catch (error) { console.log(error); } const exitHandler = () => { if (server) { server.close(() => { console.info("Server closed"); process.exit(1); }); } else { process.exit(1); } }; const unexpectedErrorHandler = (error) => { console.error(error); exitHandler(); }; process.on("uncaughtException", unexpectedErrorHandler); process.on("unhandledRejection", unexpectedErrorHandler); process.on("SIGTERM", () => { console.info("SIGTERM received"); if (server) { server.close(); } });