At the company where I currently work, our main project is split across 10 or 11 different repositories.
My morning routine used to always be the same. I would open the terminal, switch directories to a repo, run a git pull, wait for it to finish, check if there were changes to the package files, and then run npm install or yarn. Then I had to repeat that exact process ten or eleven times. It was a tedious task that took up way too much time every single day.
Because it was so cumbersome, I decided to write a script to automate it for myself. It worked perfectly and saved me a lot of trouble. After using it for a while, I realized my teammates had the exact same pain point, so I shared the script with them.
Seeing how much it helped my team made me realize that developers all over the world probably suffer from the same annoying routine. That realization led to the creation of Strive CLI. It is a collection of tools aimed at solving development friction, and Strive Sync is the very first open source project released as part of it.
Alongside my day job, I run Striving Designs as a personal project and brand. I decided to publish Strive CLI under the Striving Designs name to offer something genuinely helpful to the developer community, while subtly promoting my studio and sharing my work.
How Strive Sync Works
Strive Sync is designed to be straightforward and fast.
- Parallel Execution: It fetches and merges updates across all your repositories at the same time, significantly reducing wait times.
- Dependency Detection: If someone changed a lockfile like
yarn.lockorpackage-lock.json, the tool notices and runs the correct package manager automatically. - Workspace Discovery: It automatically finds your repository folders even if you run the command from a subfolder.
- Live Dashboard: A clear terminal interface shows the real time status of every repository in your workspace.
If you manage multiple repositories and still sync them one by one, Strive Sync might be exactly what you need.