An interactive map of the bat codebase. The cat clone with syntax highlighting, its Rust source in 121 files without the sample files it highlights in tests. error.rs is what the rest leans on, and there are no cycles.
121 files and 79 connections between their symbols.
src/error.rs
src/assets.rs
src/paging.rs
src/input.rs
src/style.rs
src/assets/build_assets.rs
src/assets/lazy_theme_set.rs
src/assets/serialized_syntax_set.rs
src/lib.rs
src/syntax_mapping.rs
src/syntax_mapping/ignored_suffixes.rs
src/syntax_mapping/builtin.rs
src/wrapping.rs
src/diff.rs
src/nonprintable_notation.rs
src/preprocessor.rs
src/pretty_printer.rs
src/line_range.rs
src/output.rs
src/less.rs
src/bin/bat/directories.rs
src/config.rs
src/printer.rs
src/decorations.rs
src/theme.rs
src/assets/build_assets/acknowledgements.rs
src/bin/bat/assets.rs
src/bin/bat/config.rs
src/bin/bat/input.rs
src/lessopen.rs
src/terminal.rs
src/vscreen.rs
.github/.codecov.yml
.github/dependabot.yml
.github/FUNDING.yml
.github/ISSUE_TEMPLATE/config.yml
.github/workflows/CICD.yml
.github/workflows/require-changelog-for-PRs.yml
assets/theme_preview.rs
Cargo.toml
81 further files are in the graph but not listed here.
NeedyNodes is a free, browser-based tool that turns a codebase into an interactive dependency map: folders become regions, files are laid out in the direction their imports run, and circular dependencies or dead exports are flagged automatically. Point at a file to see what it uses and what uses it, or double click it to see every file a change to it can reach. It parses JavaScript, TypeScript, Python, Go, Rust, Vue and Svelte, up to 1000 files per map. Nothing is uploaded: parsing runs entirely in the browser.
Browse all visualized codebases · Visualize your own codebase