We knew we wanted to do our part to assist in remote learning. We are all big fans of text adventures, (text-based games where worlds are described in text and the player submits text commands to interact with the world), so we created a tool to help teachers and students make learning fun.
What it does
We created a user-friendly web app frontend for teachers or students to make their own educational text adventures. We store these text adventures in a database, and they are accessible via a RESTful API. We then made a Discord bot that grabs the text adventures from our API, and presents them interactively for solo or classroom use directly in Discord.
How we built it
We created the webapp with React/TailwindCSS, and it is hosted with Google Cloud’s App Engine service. The webapp inserts data into a PostgreSQL database deployed with a Google SQL Cloud instance, and then the data is available via our Adventure API we built using Flask, deployed with Google’s Cloud Run service. The Discord bot was created in python using the Discord Slash API.
Challenges we ran into
We spent a lot of time figuring out Google Cloud and how to properly deploy our webapp and database.
Accomplishments that we're proud of
We are proud to be able to have created a full pipeline for creating and playing text adventures. The look and accessibility of the webapp turned out really well, and the functionality to play text adventures with a class or with friends in Discord is super cool. We are also proud of having the tools deployed for anyone to take advantage of.
What we learned
How to work with Google Cloud services to deploy webapps and databases for production. How to build an interactive Discord bot.
What's next for Adventure Learnabot
We want to deploy the Discord bot on Google's Cloud Run service, and it would be nice to integrate the Discord bot with other educational technologies.