TikTok's strategy for managing a large frontend MonoRepo with 200K files.
A MonoRepo, short for a monolithic repository, is a software development strategy where a single repository contains multiple projects, libraries, and services.
The good parts of a MonoRepo are:
However, the bigger the MonoRepo gets, the slower the various Git operations.
TikTok faced a similar change with its frontend TypeScript MonoRepo with 200K files.
To deal with this, TikTok built a tool named Sparo that optimizes the performance of Git operations for large frontend MonoRepos.
Sparo dramatically improved the performance of Git operations. Some stats are as follows