44 lines
1.2 KiB
JavaScript
44 lines
1.2 KiB
JavaScript
const express = require("express");
|
|
const cors = require("cors");
|
|
const dotenv = require("dotenv");
|
|
|
|
const connectDb = require("./config/db");
|
|
const familyRoutes = require("./routes/family");
|
|
const todoRoutes = require("./routes/todos");
|
|
const scheduleRoutes = require("./routes/schedules");
|
|
const announcementRoutes = require("./routes/announcements");
|
|
const weatherRoutes = require("./routes/weather");
|
|
const bibleRoutes = require("./routes/bible");
|
|
const photoRoutes = require("./routes/photos");
|
|
|
|
dotenv.config();
|
|
|
|
const app = express();
|
|
const port = process.env.PORT || 4000;
|
|
|
|
app.use(cors());
|
|
app.use(express.json({ limit: "2mb" }));
|
|
|
|
app.get("/health", (req, res) => {
|
|
res.json({ ok: true });
|
|
});
|
|
|
|
app.use("/api/family", familyRoutes);
|
|
app.use("/api/todos", todoRoutes);
|
|
app.use("/api/schedules", scheduleRoutes);
|
|
app.use("/api/announcements", announcementRoutes);
|
|
app.use("/api/weather", weatherRoutes);
|
|
app.use("/api/bible", bibleRoutes);
|
|
app.use("/api/photos", photoRoutes);
|
|
|
|
connectDb()
|
|
.then(() => {
|
|
app.listen(port, () => {
|
|
console.log(`Server listening on ${port}`);
|
|
});
|
|
})
|
|
.catch((error) => {
|
|
console.error("Failed to start server", error);
|
|
process.exit(1);
|
|
});
|