const express = require("express"); const htmlTemplate = require("./views/index.html"); const port = (() => { const index = process.argv.indexOf("--port"); if (index >= 0) { return process.argv.indexOf("--port") + 1; } else { return 3000; } })(); const app = express(); const todos = []; app.listen(port, "0.0.0.0", () => { console.log(`Server listening on port ${port}`); }); app.get("/", (req, res) => { return res.send(htmlTemplate(todos)); }); app.get("/todo", (req, res) => { todos.push(req.query.todo); return res.send(htmlTemplate(todos)); }); app.post("/todo", (req, res) => { let body = ""; req .on("data", (chunk) => body += chunk) .on("end", () => { todos.push(body.split("=")[1]); return res.send(htmlTemplate(todos)); }); }); app.post("/todo/delete", (req, res) => { let body = ""; req .on("data", (chunk) => body += chunk) .on("end", () => { todos.splice(todos.indexOf(body.split("=")[1]), 1); return res.send(htmlTemplate(todos)); }); });