diff options
Diffstat (limited to 'content/projects/forum/index.md')
-rw-r--r-- | content/projects/forum/index.md | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/content/projects/forum/index.md b/content/projects/forum/index.md new file mode 100644 index 0000000..caa6288 --- /dev/null +++ b/content/projects/forum/index.md @@ -0,0 +1,46 @@ ++++ +title = "forum" +[taxonomies] +categories = ["game"] +languages = ["jsx", "sass", "python"] +[extra] +wip = true +git = ["forum"] ++++ + +this is a little CRUD project i wrote when trying to refresh my full stack skills + +i used react and three.js (via [react three fiber](https://r3f.docs.pmnd.rs/getting-started/introduction)) for the frontend and flask for the backend + +i was originally using mongodb for the database but ran into issues with it being unsupported on the raspberry pi 4's architecture so i had to rewrite the backend to use sqlite instead + +you can play it in your browser (on desktop): [https://forum.soaos.dev](https://forum.soaos.dev) + +it's a game where you can walk around a 3D environment and place text notes around for others to read + +you can edit and remove notes that you wrote as well + + + +i was inspired by this one minigame from [the beginner's guide](https://en.wikipedia.org/wiki/The_Beginner%27s_Guide) where you walk around and read notes that were supposedly left by other users + +there was some point in the game about it really just being one guy talking to himself or something but i just thought it would be a really cool thing if it was real + + + +my friends had a lot of fun defacing the place + +some people got a bit clever and started making manual api requests to put messages in impossible places + + + +i had to implement server-side validation of message positions which was less of a pain in the ass than i had hoped + +i went the naive route of just loading the terrain model into the backend and using the open3d library to do a distance check + +there's still a fair amount of polish to put on this project but people seemed to enjoy it a lot + +it would be cool if someone stumbled on this project a long time from now and saw what people were writing + +i know i would be fascinated + |