WIP: Port front-end functionality from the old app to this one