${post.name}
-${post.desc}
-Path: /post/${post.path}
From 277aa945277cd460bccadf549ddd25cfad151a1f Mon Sep 17 00:00:00 2001
From: bingus_violet Like... alot later.")
+})
\ No newline at end of file
diff --git a/exposer.js b/exposer.js
new file mode 100644
index 0000000..3f7ebb2
--- /dev/null
+++ b/exposer.js
@@ -0,0 +1,52 @@
+const express = require("express"),
+paths = require("./fileManager.js")
+path = require("path"),
+fs = require("fs"),
+WebSocket = require("ws")
+
+const PORT = process.env.PORT || 8080
+
+var app = express()
+
+app.use(express.static(paths.data))
+
+app.listen(PORT, () => {
+ console.log("Violet's Limbo is now listening on port: " + PORT)
+})
+
+var sockets = []
+
+wsServer = WebSocket.Server;
+let server = require('http').createServer()
+wsServer = new wsServer({
+ server: server,
+ perMessageDeflate: false
+})
+server.on('request', app)
+
+wsServer.on("connection", function connection(socket) {
+ socket.on('message', function message(data) {
+ data = JSON.parse(data)
+ if (data.type == "ping") {
+ for (let index = 0; index < sockets.length; index++) {
+ const socketData = sockets[index];
+ if (socketData.socket == socket) {
+ sockets[index].lastPing = Date.now()
+ }
+ }
+
+ socket.send(`{"op": 3}`)
+ } else {
+ console.log(data)
+ }
+ })
+
+ sockets.push({ socket, lastPing: Date.now() })
+})
+
+
+module.exports = {
+ app: app
+}
+
+require("./api.js")
\ No newline at end of file
diff --git a/expressHandler.js b/expressHandler.js
deleted file mode 100644
index 741d4f5..0000000
--- a/expressHandler.js
+++ /dev/null
@@ -1,23 +0,0 @@
-const express = require("express"),
-paths = require("./fileManager.js"),
-pageUpdater = require("./pageUpdater.js"),
-path = require("path"),
-fs = require("fs")
-
-const PORT = process.env.PORT || 8080
-
-var app = express()
-
-app.use(express.static(paths.static))
-
-app.get("/", (req, res) => {
- res.send(pageUpdater.root())
-})
-
-app.get('/post/:post*', (req, res) => {
- res.send(pageUpdater.blogPost(req))
-})
-
-app.listen(PORT, () => {
- console.log("Violet's Limbo is now listening on port: " + PORT)
-})
\ No newline at end of file
diff --git a/index.js b/index.js
index ec50904..18d42bd 100644
--- a/index.js
+++ b/index.js
@@ -2,7 +2,7 @@ const express = require("express"),
fs = require("fs"),
path = require("path")
-require("./expressHandler.js")
+require("./exposer.js")
process.on('uncaughtException', (err, origin) => {
fs.writeSync(
diff --git a/package-lock.json b/package-lock.json
index b480755..c981df9 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -11,7 +11,8 @@
"dependencies": {
"chokidar": "^3.5.3",
"express": "^4.18.2",
- "showdown": "^2.1.0"
+ "showdown": "^2.1.0",
+ "ws": "^8.18.0"
}
},
"node_modules/accepts": {
@@ -848,6 +849,27 @@
"engines": {
"node": ">= 0.8"
}
+ },
+ "node_modules/ws": {
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz",
+ "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
}
}
}
diff --git a/package.json b/package.json
index 4bfe6b8..2b4bb12 100644
--- a/package.json
+++ b/package.json
@@ -15,6 +15,7 @@
"dependencies": {
"chokidar": "^3.5.3",
"express": "^4.18.2",
- "showdown": "^2.1.0"
+ "showdown": "^2.1.0",
+ "ws": "^8.18.0"
}
}
diff --git a/pageUpdater.js b/pageUpdater.js
deleted file mode 100644
index 71a7b35..0000000
--- a/pageUpdater.js
+++ /dev/null
@@ -1,66 +0,0 @@
-const fs = require("fs"),
-path = require("path"),
-showdown = require("showdown"),
-paths = require("./fileManager.js"),
-mkthtml = new showdown.Converter()
-
-mkthtml.setFlavor("github")
-
-module.exports = {
- root: () => {
- var data = JSON.parse(fs.readFileSync(path.join(paths.data, 'data.json')))
- var postsArray = data.posts
-
- var html = ""
-
- for (var i = 0; i < postsArray.length; i++) {
- var addedHTML = ""
- var post = postsArray[i]
-
-
- addedHTML +=
- ` Couldn't find this post... Maybe try clearing your cache? Violet's Limbo is currently going through alot of backend changes, so expect things to break! Violet's Limbo is... my blog! I talk about game design, development, and whatever else comes to mind! Enjoy my bad opinions!Sorry! Blog is undergoing large changes. Check back later!
Home
- Violet's Limbo
-
093b&xnC
zh-%~zI2=-U!S=p|j*yE$`TLNzcaTtohqHUGS27|Vc!?OR7mmZ}85%n4;fy*ARh{D^
z9lzqrtHf880o0l(&_~6@*3Rsl!t=?O;%l7rtPxIz&PDA?ZJ9D>Y@LMGcN=TL)TOC(
z<(CJ^mwWG(|5ct|Zn%8&@rYx_vg80%t0*hv@OS2SeK)8bNn*chzn2G~S^-+PaA!JE
zc33K+vp*Y<_IHIu>-#pg1gncuxc~})5%q1tIeAHv4zUYUf>*v-yfk>W{H*R1)y`H~
zGAfrMHqbXXBQlbzO6SOS8t}x<^7g%@ g*VRqU
z1}Sm@w6#V&U&20Nln`H7)rqwwoH?$NzqN7yX?u8sLqjn;XKJ-j>Qz~1=bPN3UsIP0
zzwhR>b;r7+PDJFscax4Cbjr%_rfn7YCS>Uu%f!Cb7V0@SetTnU^cs(6f4n^&439vk
zyjB%nzB}}Qan6*^Gd-iKC8su;{_{yu``&>DFk`lBT5z#YaOvb!tBn@+VRczs0f)^Q
z;tp-Ix6?Luo;>#QlVp2IViD`tSHNU2d*1d!)mfbPNqWF`ev958fmrC6+?}v`csXb9
zAa3@ITc4vHx{G#{@!-Mz$Lo_ PI
ziEmh;fC=9I@Q>b?zFsM_VBL;N1wWeqQc8 WJ_TEgzbzch2O2|a&j1U0iAGKaK+
zOn194uDoA$%&J7grapKmuqb@R7B(t;!}qAX+?=LiJ_AFJ%&VCf7lj3sybh)O-|%9O
zMMoz`E+u9n{!wBV^$E_^)v{1<2X6m*X2a;iCmKEUx1|%3i)&zdeN%G2>aIPH!3=*8
zXRR@rE9ZZG^sqD;`T_K;enhMp))uIg
o6cev9@(=4yKo;#wf_BBDp9t0lg!H>E$`5ca?eyW
zU{npgq3KVjKihj8BQ3Y}fBVQ$wP@PYD}es!&5HCZE7jGWL7(&$<}de28QtyFPY@9T
zY6k|9I-1t0muZ3rG3fYEz+pAT+Xddfmy2U=l}6=<{pFaJSeYI%l_(P}paN@Z6a^B{
zv~aU;^~|D#p;UVM$wC`VU@5aI`XW)q