demeter

Autonomous Hydroponic Intelligence

backend/node_server/index.js (813B)


 1const path = require("path");
 2require("dotenv").config({ path: path.join(__dirname, "..", "..", ".env") });
 3const express = require("express");
 4const cors = require("cors");
 5const { initDB, connectMongoDB } = require("./config/db");
 6const farmRoutes = require("./routes/farmRoutes");
 7const cropRoutes = require("./routes/cropRoutes");
 8
 9const dns = require("node:dns/promises");
10dns.setServers(["1.1.1.1"]);
11
12const app = express();
13const PORT = process.env.PORT || 3001;
14
15// Middleware
16app.use(express.json());
17app.use(cors());
18
19// Initialize Database & Indexes
20initDB();
21connectMongoDB();
22
23// Mount Routes
24// All routes inside farmRoutes will be prefixed with /api
25app.use("/api", farmRoutes);
26app.use("/api/crops", cropRoutes);
27
28app.listen(PORT, () => {
29  console.log(`🚀 Server running on port ${PORT}`);
30});