Name fonts
[api.edontheweb.space.git] / backend.js
blobc386822450c393454fd8f6e51d36e97077164e86
1 const { spawn } = require("child_process");
2 const WebSocket = require("ws");
4 const run = () => {
5         const wss = new WebSocket.Server({ port: 8081 });
7         wss.on("connection", ws => {
8                 setupConnection(ws);
9         });
11 run();
12 const setupConnection = ws => {
13         let ed = spawn("ed");
14         let open = true;
15         ed.stdout.on("data", data => {
16                 ws.send(`${data}`);
17         });
19         ed.on("close", code => {
20                 open = false;
21                 ws.close();
22         });
23         ws.on("message", message => {
24                 if (open) {
25                         ed.stdin.write(message);
26                 }
27         });
29         ws.send("Welcome to Ed on the Web!\n");