Open-source tool · Rust + WebAssembly
Constellation
Turns GitHub activity into interactive, recruiter-friendly project maps and README-ready SVGs.
My role: Creator · Full-stack developer
Open the Studio to explore a sample, or load a public GitHub profile to build a project map.
The problem
GitHub profiles contain useful project and language signals, but their relationships are difficult to scan and present in a profile README.
The solution
Constellation maps repositories and their shared languages or topics into customizable interactive SVGs, with a Studio for exploration and exports that can be regenerated through GitHub Actions.
My contributions
- Built the graph and layout engine in Rust, compiled to WebAssembly for the browser and reused by command-line and automated generation paths.
- Designed Studio presets and export profiles, including Recruiter README Orrery and Developer Topology views, around repository selection and filters.
- Added public and authenticated GitHub data modes, a reusable Web Component, and a GitHub Action that can publish updated README graphics.
- Kept an accessible project directory alongside the interactive SVG, with keyboard controls, reduced-motion behavior, and responsive layouts.
Engineering decisions
The same graph needs to work in an interactive browser, static SVG export, and scheduled GitHub workflow. A shared Rust model keeps graph construction consistent while the browser layer handles accessible controls and the SVG renderer supports both live exploration and portable output.
Testing
Rust engine and JavaScript integration tests cover graph generation and rendering paths; repository CI checks the project and its generated outputs.
Explore the interactive Workshop
The Workshop has an interactive GitHub project explorer. Enter a public username to explore connections across repositories, languages, topics, and gists.
Explore Constellation in the Workshop- Repository
- mnichols08/constellation
- Repository updated