mernboot
Version:
A powerful CLI tool for generating full-stack MERN applications...
39 lines (31 loc) • 985 B
JavaScript
import express from "express";
import dotenv from "dotenv";
import cors from "cors";
import morgan from "morgan";
import path, { dirname } from "path";
import { fileURLToPath } from "url";
import connectDB from "./config/mongoose/database.js";
dotenv.config();
// Express App Setup
const app = express();
const PORT = process.env.PORT || 5000;
// Middleware
app.use(express.json());
app.use(cors());
app.use(morgan("dev"));
const __dirname = dirname(fileURLToPath(import.meta.url));
app.use(express.static(path.resolve(__dirname, "./public")));
// Sample Route
app.get("/", (req, res) => {
res.sendFile(path.resolve(__dirname, "./public", "index.html"));
});
// Start Server and Connect to DB
app.listen(PORT, async () => {
console.log(`🚀 Server running on http://localhost:${PORT}`);
try {
await connectDB();
} catch (error) {
console.error("❌ MongoDB Connection Failed:", error.message);
process.exit(1);
}
});