RealityMap: See How a Codebase Fits Together
Give it a project and see how its code is connected.
RealityMap is a local-first architecture visualiser for JavaScript and TypeScript projects. It reads a repository from disk and builds an interactive graph showing its files, imports, and dependencies. You can run it with npx reality-map ./my-project, without configuring a service or uploading your code anywhere.
I started building it because I wanted an easier way to understand unfamiliar repositories. Finding the entry point of a project is usually straightforward, but understanding how the rest of it fits together takes more time. You end up opening files, following imports, and jumping between directories just to get a sense of the structure. I wanted a tool that could give me that overview without having to do all of that manually.
The tool analyses the repository and turns the relationships between files into a graph you can explore. It supports React, Next.js, Node.js, monorepos, and plain TypeScript projects. Everything runs locally, with no hosted backend, database, telemetry, or AI service involved. Keeping it local was intentional. I didn't see a reason to upload someone's source code just to visualise its structure.
The implementation is deliberately simple to use:
npx reality-map ./my-project
At the time I started it, AI coding tools were still beginning to change how developers worked with unfamiliar codebases. A visual overview seemed like a useful way to make repository exploration less tedious, and RealityMap was my attempt at solving that problem.
I eventually stopped actively developing it. AI tools have since changed how I approach the same task, so the original reason I built RealityMap became less relevant to my own workflow. I didn't want to keep adding features simply for the sake of maintaining momentum.
The project is still open source on GitHub, and you can still try it using npx reality-map. It was a small tool built around a problem I had at the time. I enjoyed working on it, even if I no longer use it in the same way.