How to use convex in a big team/monorepo
Now the upside of this model is that you can establish unique deployment targets for each service and frontend, seperate databases by concern/domain and scale each part of the project independently. With local development you can have each developer using local db instances to test new schemas in isolation (ie not impacting the work of other devs).
The downside of this model is that wire up is incredibly cumbersome and time consuming, the number of integrations needed to support realtime, file storage etc.. is time consuming, and get full end to end type safety is nothing short of a burden.
I can see convex solving a heck of a lot of these integration and type safety problems, however it is unclear how convex is supposed to scale out as a developer experience with multiple devs working on a project at once?
Firstly, having a single “dev” environment - do all developers working locally use this one environment? How do they not step on each other’s toes with schema changes?
Second - is it possible to have multiple (neatly managed) convex instances acting as separated concerns in the one project?
Third - deployment to a personal environment for testing / PRs and spinning up a local environment just for the one developer before push to dev, staging and then prod?
I’d love to start using convex on some large scale stuff but it’s hard to get the team over the line without having clearer patterns recommended by the convex team.
Appreciate your feedback!
