Working with monorepos
A monorepo (monolithic repository) is a software development strategy to host code from multiple projects in a single repository. This allows for unified versioning, simplified dependency management, and easier code sharing across projects. In a monorepo, developers can jump between projects within the same IDE window and reference code more easily across projects, such as sharing TypeScript interfaces between the frontend and the backend, ensuring that data objects line up every time.
You can enable access to multiple projects in the same IDE window using multi-root workspaces in VS Code, where you can add multiple projects to display in the Explorer window. However, a monorepo combines projects at the source control level, allowing us to build them together on our CI server. Read more about multi-root workspaces at https://code.visualstudio.com/docs/editor/multi-root-workspaces.
Having access to code from multiple projects makes it possible...