Currently the repositories for Manager Dashboard, Python Workers and Firebase Functions are located in the same repository and they share the same docker-compose file.
Manager Dashboard is a statically served HTML website.
Firebase Functions are deployed on "Firebase" using Firebase CLI.
Python Workers is python script that periodically synchronizes PSQL with Firebase
I'm a bit of a fan of monorepos, and I'll argue "why not?" (split the repo):
many changes will impact more than one repo. It means we'll have to write multiple PRs, and sync multiple repos, including when deploying. We're already doing this for the app vs backend when we change anything in the data format. It's painful.
Similarly for issues, we'll have to open multiple issues in several repos (I'll just point to the meta repo you created here which is the exact opposite of what you suggest in this ticket)
with a monorepo, it is easier to keep changes in sync, including with coherent overall CI checks that can validate that the dashboard, functions and workers will function together. With multiple repos, it's much harder to do (not impossible, but painful).
Currently the repositories for Manager Dashboard, Python Workers and Firebase Functions are located in the same repository and they share the same docker-compose file.
Why?