forked from opencodeiiita/FandomFusion-Backend
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathapp.js
53 lines (44 loc) · 1.62 KB
/
app.js
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
45
46
47
48
49
50
51
52
import dotenv from "dotenv";
import express from "express";
import cors from "cors";
import mongoose from "mongoose";
import dbURL from "./src/config/db.config.js";
import http from "http"; // For creating HTTP server
import { initializeSocket } from "./src/config/socket.js"; // Import socket config
import userAuthRoutes from "./src/routes/v1/userAuth.routes.js";
import userRoutes from "./src/routes/v1/user.routes.js";
import testRoutes from "./src/routes/v1/test.routes.js";
import userListsRoutes from "./src/routes/v1/userLists.routes.js";
import mediaRoutes from "./src/routes/v1/media.routes.js";
import chatRoutes from "./src/routes/v1/chat.routes.js";
import postRoutes from "./src/routes/v1/post.routes.js";
dotenv.config();
const app = express();
const server = http.createServer(app); // Create HTTP server
// Initialize Socket.IO
initializeSocket(server);
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use(cors());
app.use("/api/v1/auth/", userAuthRoutes);
app.use("/api/v1/test", testRoutes);
app.use("/api/v1/user", userRoutes);
app.use("/api/v1/lists", userListsRoutes);
app.use("/api/v1/media", mediaRoutes);
app.use("/api/v1/chats", chatRoutes);
app.use("/api/v1/post", postRoutes);
app.get("/", (req, res) => {
res.send("Hello World");
});
const PORT = process.env.PORT || 4000;
server.listen(PORT, () => {
console.log(`Server is listening on port ${PORT}! 🚀`);
});
mongoose.connect(dbURL)
.then(() => {
console.log("Successfully connected to MongoDB Atlas");
})
.catch(err => {
console.log("Could not connect to MongoDB Atlas. Exiting now...", err);
process.exit();
});