-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapp.js
More file actions
30 lines (24 loc) · 836 Bytes
/
app.js
File metadata and controls
30 lines (24 loc) · 836 Bytes
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
const express = require("express");
const app = express();
const tasks = require("./routes/tasks");
const notFound = require("./middleware/not-found");
const errorHandlerMiddleware = require("./middleware/error-handler");
require("dotenv").config();
const connectDB = require("./db/connect");
//middleware: pre-built
app.use(express.static("./public"));
app.use(express.json()); //if we don't use then we will not have any data in req.body
//routes
app.use("/api/v1/tasks", tasks);
app.use(notFound); //for any route other than /api/v1/tasks
app.use(errorHandlerMiddleware);
const port = process.env.PORT || 3000;
const start = async () => {
try {
await connectDB(process.env.mongo_url);
app.listen(port, console.log(`Server is listening on port ${port}..`));
} catch (error) {
console.log(error);
}
};
start();