Currently, `backend.ts` is cluttered with different code from different resources. A dedicated effort to separate everything out, add comments, and proper formatting needs to be made