Reimplemented the app with entirely client-side rendering.