This was a project where i explored event-based programming and websockets, which resulted in a small webchat.
Squido is a service that has the purpose of bringing students and tutors in an easy and fast way together. The Service consists of a iOS and a Android App that both consume one API.
My part was mainly to extend the website and port the backend from CherryPy to Flask, as well as all upcoming redesigns of the app and the website.
In my theoretical computer science class i learned about state machines and fell for the idea. After implementing an universal turing machine, i asked myself what other use cases a deterministic automaton could have. I thought I could write an engine for text adventure games using this idea.
Text adventures have traditionally been built in a imperative manner, following a flow chart like pattern. I thought this could have some improvement. So i wrote a deterministic finite state machine in NodeJS, where i can feed my adventure as a YAML file. Said file is basically a set of states, in which each state represents a prompt on the commandline and interactions who are transitions to other states. I found it works pretty well. Unfortunately im a terrible story writer, so i hope one day someone send me a cool adventure that i can play 🙂