Panel Discussion: Mono-repo Vs. Multi-repo Vs. Hybrid

This ad is not shown to multipass and full ticket holders
React Summit
React Summit 2025
June 13 - 17, 2025
Amsterdam & Online
The biggest React conference worldwide
Learn More
In partnership with Focus Reactive
Upcoming event
React Summit 2025
React Summit 2025
June 13 - 17, 2025. Amsterdam & Online
Learn more
Bookmark
Rate this content

FAQ

The panelists have varied preferences for repository approaches. Luke prefers the monorepo approach, Julie's choice depends on the situation, Viktor is a supporter of monorepo due to his past experience at Google, and Angelo prefers a hybrid approach.

A monorepo approach is favored for its ability to facilitate easier knowledge transfer within teams, allowing team members to have a comprehensive understanding of the project as a whole. This approach is particularly effective for smaller to medium-sized projects.

The multirepo approach is regarded as beneficial for establishing strong ownership and independence among different teams, especially in the context of microservices. It allows for more focused and autonomous management of various project components.

Large-scale monorepos can present challenges in terms of tooling and efficiency, especially at the scale of organizations like Google or Facebook. Issues such as slow indexing and the need for specialized tools to manage version control can arise, making large monorepos complex to handle.

Common tooling issues in monorepo setups include inefficient version control systems and difficulties in managing large indexes, which can hinder performance and scalability. This often requires organizations to develop in-house tools to adequately manage their repositories.

Panelists' preferences for specific repository approaches are heavily influenced by their personal experiences and the environments they have previously worked in, such as Viktor's experience with Google's monorepo setup and Angelo's diverse background in different organizational scales and sectors.

The hybrid approach, as supported by Angelo, offers flexibility in managing codebases, allowing integration of both monorepo and multirepo strategies depending on specific project needs, which can be particularly useful when dealing with a mix of legacy and new systems.

Angel Rivera
Angel Rivera
Julie Ng
Julie Ng
Lukonde Mwila
Lukonde Mwila
Victor Savkin
Victor Savkin
33 min
01 Jul, 2021

Comments

Sign in or register to post your comment.
Video Summary and Transcription
Panel discussion on Monorepo vs. Hybrid vs. Multirepo with speakers introducing themselves and discussing their preferences. Architects' perspective on repository options and personal experiences from Viktor and Angelo on monorepo and hybrid approaches. Discussion on monorepo, multi-repo, and hybrid approaches for different project sizes and ownership needs. Benefits of monorepo coordination for microservices and real-life experiences transitioning from monoliths to separate repositories. Importance of efficient tooling for code management and versioning control systems in the industry. Challenges related to tooling problems, indexing inefficiencies, and security automation. Importance of addressing people issues alongside automation for security enhancements. Challenges of enforcing monorepo systems in large teams, emphasizing tailored solutions for unique team structures. Challenges of implementing monorepo at scale and adapting Google monorepo style for smaller systems. Emphasis on good tooling for collaboration, misconceptions about increased coupling in monorepos, and establishing boundaries within a monorepo. Discussing organizational boundaries, the foundation of tooling, and advocating for a hybrid approach in repository management. Importance of tooling and collaboration in managing repositories effectively, strategic planning in grouping and naming conventions, assessing code inheritance, implications of decoupling in monorepos, efficiency-cost balance, and integrating new technologies in hybrid approaches.

1. Panel Discussion: Mono vs Hybrid vs Multi-Repo

Short description:

Welcome to our panel discussion on mono repo, hybrid, and multi-repo. We have a lineup of speakers, including Lukande from South Africa, who primarily works in the financial services sector and focuses on the cloud and DevOps space. Julie, an engineer at Microsoft, has experience with DevOps and can provide insights on the different approaches.

And welcome, everybody, to our panel discussion. Today, we have a great topic. So mono repo versus hybrid versus multi-repo. And we have a lineup of speakers. So speakers, please go ahead, introduce yourself.

Luke. Hi, everyone. My name is Lukande, but a lot of people call me Luke. I'm a Star Wars fan so you can also call me Skywalker, if you like. And I'm from South Africa. My actual nationality is that I'm Zabian. Senior software engineer working at a company called Intellect Software in South Africa. And yeah, primarily in the financial services sector and focused mostly on the cloud and DevOps space.

Nice. And if you guys are a supporter of one of the approaches, please tell me which one. Luke, are you a supporter? Look, I'm between both multi and mono. But to be honest, most of the times I go with the mono approach, especially even my side projects. So, yeah, I guess I'd go with mono. OK, OK, Julie, hi. OK, found the unmute button. I'm still doing that after your COVID. But yeah.

So, hi, I'm Julie. I'm an engineer at Microsoft. I help customers use Azure on board to Azure. Before that, I was an enterprise architect, an insurance company, and helped a lot of developers figure out DevOps and mentored them, annoyed them, because I always have to do the security thing as well a little bit, be the bad person that says you have to sign your commits. Yeah. You're probably going to ask me now, mono, multi, hybrid. I've seen it all.

1. Panel Discussion: Speaker Introductions

Short description:

Panel discussion on Monorepo vs. Hybrid vs. Multirepo with speakers introducing themselves and discussing their preferences.

And welcome everybody to our panel discussion. Today we have a great topic. So, Monorepo vs. Hybrid vs. Multirepo and we have a line up of speakers. So, speakers please go ahead introduce yourself. Luke. Hi, everyone. My name is Lukande, but a lot of people call me Luke. I'm a Star Wars fan, so you can also call me Skywalker, if you like. And I'm from South Africa. My actual nationality is that I'm Zambian. I'm a senior software engineer working at a company called Entelect software in South Africa. And yeah, primarily in the financial services sector and focus mostly on the cloud and dev ops space.

Nice. And if you guys are a supporter of one of the approaches, please tell me which one, Luke. Are you a supporter? Look, I'm between both multi and mono. But to be honest, most of the time I go with the mono approach, especially even with my side projects. But I guess I'd go with mono. OK. OK. OK. Found the unmute button. I'm still doing that after your COVID. But yeah. So hi, I'm Julie. I'm an engineer at Microsoft. I help customers use Azure onboard to Azure. Before that, I was an enterprise architect, an insurance company and helped a lot of developers sort of figure out dev ops and mentored them, annoyed them because I always have to do the security thing as well, a little bit, sort of be the bad person that says you have to sign your commits. Yeah, you're probably going to ask me now mono, multi, hybrid.

QnA

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Levelling up Monorepos with npm Workspaces
DevOps.js Conf 2022DevOps.js Conf 2022
33 min
Levelling up Monorepos with npm Workspaces
Top Content
NPM workspaces help manage multiple nested packages within a single top-level package, improving since the release of NPM CLI 7.0. You can easily add dependencies to workspaces and handle duplications. Running scripts and orchestration in a monorepo is made easier with NPM workspaces. The npm pkg command is useful for setting and retrieving keys and values from package.json files. NPM workspaces offer benefits compared to Lerna and future plans include better workspace linking and adding missing features.
End the Pain: Rethinking CI for Large Monorepos
DevOps.js Conf 2024DevOps.js Conf 2024
25 min
End the Pain: Rethinking CI for Large Monorepos
Today's Talk discusses rethinking CI in monorepos, with a focus on leveraging the implicit graph of project dependencies to optimize build times and manage complexity. The use of NX Replay and NX Agents is highlighted as a way to enhance CI efficiency by caching previous computations and distributing tasks across multiple machines. Fine-grained distribution and flakiness detection are discussed as methods to improve distribution efficiency and ensure a clean setup. Enabling distribution with NX Agents simplifies the setup process, and NX Cloud offers dynamic scaling and cost reduction. Overall, the Talk explores strategies to improve the scalability and efficiency of CI pipelines in monorepos.
Panel Discussion: Future of React
React Summit US 2024React Summit US 2024
39 min
Panel Discussion: Future of React
Watch video: Panel Discussion: Future of React
Kent C. Dodds
Shruti Kapoor
Mark Erikson
Eli White
Mofei Zhang
Theo Browne
Tom Occhino
7 authors
We're going to be doing a future of React panel discussions. React 19 is in RC stage and we're excited to hear when it will be stable. The React compiler is here to stay and is the future of developer experience and tooling. React 19 brings exciting features like RSCs and consolidation of the framework. React's commitment to community and innovation is commendable. The React team values feedback and actively engages with the community. React's future includes supporting the community and enabling smooth migrations. There's a need to teach underlying concepts and educate AI systems. Teaching and adapting to React can be challenging. The React compiler changes default re-rendering behavior. Collaboration with Next.js and Vercel has been valuable for React's development. Appreciation for the community and partnerships with Vercel and Microsoft.
React 19 Panel Discussion
React Summit 2024React Summit 2024
27 min
React 19 Panel Discussion
Ryan Carniato
Evan Bacon
Sathya Gunasekaran
Tim Neutkens
Brooks Lybrand
5 authors
The Talk revolves around React 19 and the React compiler, highlighting its new APIs, optimizations, and impact on frameworks like Next.js. The React compiler has undergone multiple iterations, resulting in improved performance and alignment with developers' expectations. The integration of React with Next.js simplifies rendering and offers free optimizations. There is excitement about the opt-in approach of React Server Components and the potential of underrated features like suspense and transitions. Overall, React's influence on the JavaScript ecosystem and UI libraries is acknowledged and appreciated.
Federated Microfrontends at Scale
React Summit 2023React Summit 2023
31 min
Federated Microfrontends at Scale
Top Content
Watch video: Federated Microfrontends at Scale
This Talk discusses the transition from a PHP monolith to a federated micro-frontend setup at Personio. They implemented orchestration and federation using Next.js as a module host and router. The use of federated modules and the integration library allowed for a single runtime while building and deploying independently. The Talk also highlights the importance of early adopters and the challenges of building an internal open source system.
Scale Your React App without Micro-frontends
React Summit 2022React Summit 2022
21 min
Scale Your React App without Micro-frontends
This Talk discusses scaling a React app without micro-frontend and the challenges of a growing codebase. Annex is introduced as a tool for smart rebuilds and computation caching. The importance of libraries in organizing code and promoting clean architecture is emphasized. The use of caching, NxCloud, and incremental build for optimization is explored. Updating dependencies and utilizing profiling tools are suggested for further performance improvements. Splitting the app into libraries and the benefits of a build system like NX are highlighted.

Workshops on related topic

Node Monorepos with Nx
Node Congress 2023Node Congress 2023
160 min
Node Monorepos with Nx
Top Content
WorkshopFree
Isaac Mann
Isaac Mann
Multiple apis and multiple teams all in the same repository can cause a lot of headaches, but Nx has you covered. Learn to share code, maintain configuration files and coordinate changes in a monorepo that can scale as large as your organisation does. Nx allows you to bring structure to a repository with hundreds of contributors and eliminates the CI slowdowns that typically occur as the codebase grows.
Table of contents:- Lab 1 - Generate an empty workspace- Lab 2 - Generate a node api- Lab 3 - Executors- Lab 4 - Migrations- Lab 5 - Generate an auth library- Lab 6 - Generate a database library- Lab 7 - Add a node cli- Lab 8 - Module boundaries- Lab 9 - Plugins and Generators - Intro- Lab 10 - Plugins and Generators - Modifying files- Lab 11 - Setting up CI- Lab 12 - Distributed caching
React at Scale with Nx
React Summit 2023React Summit 2023
145 min
React at Scale with Nx
Top Content
WorkshopFree
Isaac Mann
Isaac Mann
We're going to be using Nx and some its plugins to accelerate the development of this app.
Some of the things you'll learn:- Generating a pristine Nx workspace- Generating frontend React apps and backend APIs inside your workspace, with pre-configured proxies- Creating shared libs for re-using code- Generating new routed components with all the routes pre-configured by Nx and ready to go- How to organize code in a monorepo- Easily move libs around your folder structure- Creating Storybook stories and e2e Cypress tests for your components
Table of contents: - Lab 1 - Generate an empty workspace- Lab 2 - Generate a React app- Lab 3 - Executors- Lab 3.1 - Migrations- Lab 4 - Generate a component lib- Lab 5 - Generate a utility lib- Lab 6 - Generate a route lib- Lab 7 - Add an Express API- Lab 8 - Displaying a full game in the routed game-detail component- Lab 9 - Generate a type lib that the API and frontend can share- Lab 10 - Generate Storybook stories for the shared ui component- Lab 11 - E2E test the shared component
OSZAR »