Code CosmosExplore your codebase as an interactive 3D universe.Files become planets. Folders become stars. Dependencies become constellation lines. What is Code Cosmos?Large codebases are hard to understand at a glance. After a certain size, no amount of file-tree browsing gives you a real sense of how pieces connect. Code Cosmos maps your entire repository into a navigable 3D space — folders orbit as stars, files orbit those stars as planets, and every import statement becomes a visible line between them. It lives in your VS Code sidebar as a persistent panel. It is not a replacement for your editor — it is a way to understand before you code. See the shape of a project you just cloned. Spot tightly coupled clusters before you refactor. Trace a bug across file boundaries visually. Demo
Overview — Your Codebase as a Universe
Navigation — Orbit, Zoom, FlyPlain click on any planet highlights it. Alt+click flies the camera to it.
Search — Jump to Any File InstantlyPress
Dependency Visualization — See What Connects to WhatImport statements parsed across 13 languages. Toggle layers on and off individually. Circular dependencies pulse red automatically.
Focus Mode — Isolate a File's ConnectionsCtrl+click any planet to enter Focus Mode. Everything else dims. Only that file's direct imports and importers stay visible. A popup lets you open the file or keep exploring.
Path Trace — Find the Route Between Any Two FilesShift+click two planets to select them. Code Cosmos finds the shortest dependency path between them using BFS and draws it in gold. If there's no direct path it finds the closest common ancestor.
Git Heatmap — See What's HotEnable the git heatmap to colour-code your universe by commit activity. Frequently changed files shift toward orange and white-hot. Untouched files sit cool and blue. Uncommitted changes appear as glowing animated rings.
Camera Bookmarks — Save Your Favourite ViewsClick + Save View in the top-right to name and save your current camera position. Return with one click or Ctrl+1–5. Bookmarks persist in your
Spacecraft Mode — Fly Through Your CodePress
Settings & Spacing — Customise the CosmosPress
InstallationSearch for Code Cosmos in the VS Code Extensions panel ( Or install from the command line:
Requirements: VS Code 1.120.0 or higher. No additional dependencies required. Getting Started
How the Universe Maps to Your Code
Keyboard Shortcuts
Settings ReferenceOpen with Layout
Dependency Lines
Animations
Overlays
Rendering
Presets: Clean (minimal), Full Detail (everything on), Performance (optimised for large repos). Excluding Files and FoldersCreate a
The following are always excluded automatically: The
|
| Language | Extensions |
|---|---|
| TypeScript / JavaScript | .ts, .tsx, .js, .jsx, .mjs, .cjs |
| Python | .py |
| Java | .java |
| Rust | .rs |
| Go | .go |
| C / C++ | .c, .cpp, .h, .hpp |
| Ruby | .rb |
| PHP | .php |
| Swift | .swift |
| Kotlin | .kt |
| HTML | .html |
| CSS / SCSS | .css, .scss |
| Vue | .vue |
| Svelte | .svelte |
Files in unsupported formats still appear as planets — they just have no dependency lines.
Performance
Code Cosmos is designed to handle real projects, not just small demos.
| Project size | Behaviour |
|---|---|
| < 200 files | Instant load on second open (cache hit) |
| 200–500 files | Loads in 2–5 seconds on first open, near-instant on subsequent opens |
| 500–1,500 files | Performance Mode is offered automatically before rendering |
| > 1,500 files | Performance Mode required — consider .cosmosignore for generated files |
Performance Mode uses GPU instanced mesh rendering — all planets drawn in a single draw call, dramatically reducing GPU overhead on large repos.
The cache system computes a lightweight fingerprint (file sizes, modification times, git HEAD) on every open. If nothing has changed, the expensive work (AST parsing and git log) is skipped entirely. Only a force-refresh (Ctrl+U) bypasses the cache.
Known Limitations
- Monorepos — each workspace folder renders as a separate galaxy. Cross-package dependencies between workspace roots are not yet visualised.
- Dynamic imports —
import()expressions andrequire()calls with variable paths cannot be statically resolved and will not appear as dependency lines. - Very large repos (3,000+ files) — even with Performance Mode, rendering and parsing will be slower on lower-end hardware. Excluding generated files and test fixtures via
.cosmosignorehelps significantly.
Roadmap
| Feature | Status |
|---|---|
| 3D universe rendering | ✅ Shipped |
| 13-language dependency parsing | ✅ Shipped |
| Git heatmap | ✅ Shipped |
| Focus mode | ✅ Shipped |
| Path trace between any two files | ✅ Shipped |
| Camera bookmarks | ✅ Shipped |
| Multi-select | ✅ Shipped |
| Spacecraft pilot mode | ✅ Shipped |
.cosmos.cache for instant reloads |
✅ Shipped |
| Progress loading screen | ✅ Shipped |
| Spacing / repulsion slider | ✅ Shipped |
| Genesis animation on first load | 🔜 Planned |
| Photon particle streams on dependency lines | 🔜 Planned |
| Tactical HUD panel | 🔜 Planned |
| Test coverage visualisation | 🔜 Planned |
| Drag-to-migrate files between folders | 🔜 Planned (flagship) |
See the open issues for the full list.
Contributing
Contributions are welcome. The codebase is TypeScript throughout — VS Code extension host on the Node.js side, Three.js WebView on the render side. See CONTRIBUTING.md for architecture overview and PR guidelines.
License
MIT — see LICENSE for details.
Built with Three.js · Made for VS Code
Marketplace · GitHub · Issues









