In my experience, system design and architecture knowledge usually comes from working with large, complex codebases.
I learned most of my coding by reading Stack Overflow answers and studying existing projects, but understanding system design and architecture from real codebases was much harder. I built revibe.codes to make that process more explicit by reverse-engineering open-source codebases and surfacing their structure and flows.
It analyzes a project’s structure, identifies key files, and builds a high-level understanding of the system by reading through the code. The output is presented in plain English through interactive flow diagrams and guided code walkthroughs.
The experience is interactive — you can start from a step in a user flow, jump to the module behind it, and then into the relevant code files. There’s also a guided path through the codebase that suggests where to start and what to look at next, with explanations of important files.
This is still early and largely driven by my own learning process. I’m curious how others here approach studying large systems, and whether this kind of tooling feels useful.