msgr

GitHub

An app for posting messages

msgr (pronounced “messenger”) is an app developed by myself and Ian Brown for our final project for Introduction to Databases at OSU. It is a web application that allows user to post Twitter-style “messages”, comment on “messages” and follow other users. At one time it was hosted on msgr.fgj.codes; someday it may appear there again.

Here’s a basic overview of the architecture, which is based on the JAM stack:

Msgr architecture overview
(made by me in LucidChart)

Basically, the app uses three services:

Ian, who had much more experience than me with APIs, built the API server, and we collaborated on the database. I built the frontend using React.

There’s nothing mind-blowingly cool happening anywhere in this project; the experience of standing up an entire web application was enough excitement for me. It was fun to get to play around with asynchronous loading on the frontend; I used a Container Component pattern for async loading content to render a placeholder while loading, then swap in the content loaded from the API server once it returned. This was very necessary, as the combination of Flask in development mode plus EC2 micro servers makes for a veeeery slow load time.

I was also pretty proud of the overall look-and-feel of the app, which I designed in Figma before starting development. Here’s a picture from the design:

Msgr user interface picture

Overall, this was a fun project that taught me a lot about React development and infrastructure design.