Skip to content
| Marketplace
Sign in
Visual Studio Code>SCM Providers>F-GitGraphNew to Visual Studio Code? Get it now.
F-GitGraph

F-GitGraph

LMO-LAB

|
15 installs
| (0) | Free
High-performance Git Graph powered by F# Native AOT Core, visual history, branch actions, and cyberpunk neon styling.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

F-GitGraph

High-performance Git history visualization for VS Code, powered by an F# Native AOT core.

License GitHub release

 

About

F-GitGraph is a next-generation Git history visualizer built for large repositories, originally forked from the MIT-licensed Git Graph extension (via the Neo-Git-Graph fork). It combines a lightweight Preact webview with a native F# Native AOT core engine (f-gitgraph-core.exe) that reads Git data directly and computes the graph layout in parallel — no dependency on a .NET runtime, and dramatically faster than previous single-threaded TypeScript implementations.

Maintained and published by LMO-LAB.

Key Highlights

  • Dual-core architecture — a lightweight Preact UI drives a self-contained F# Native AOT engine that runs directly on the metal.
  • Direct Git access — reads the binary commit-graph through memory-mapped files and the in-process LibGit2 C binding, 30–50× faster than shelling out to the Git CLI.
  • Parallel DAG layout — sorts commits and allocates graph lanes across multiple CPU threads, pre-computing SVG geometry before the UI renders.
  • Streaming IPC — a stdio RPC daemon with a binary MessagePack protocol answers windowed queries in under 5 ms for silky virtual scrolling.
  • Signature-safe writes — every mutating operation (commit, branch, merge, rebase, cherry-pick, tag, push, pull) is delegated to the native git.exe, preserving GPG/SSH signing and Git Credential Manager.
  • Modern neon UI — hexagon SVG commit nodes, ambient neon glow, 5× avatar zoom preview, and a full commit-message panel.

Features

  • Graph view — branches, tags, and uncommitted changes in a single hexagonal graph.
  • Commit details — click a commit to inspect the message, changed files, and diffs.
  • Branch actions — create, checkout, rename, delete, and merge.
  • Tag actions — create, delete, and push tags.
  • Commit actions — checkout, cherry-pick, revert, and reset.
  • Avatar preview — hover-to-zoom avatar preview (fetching avatars is deprecated in v0.6.0).
  • Multi-repo — work with several repositories in one workspace.

Architecture

Traditional implementations (including the upstream Git Graph and Neo-Git-Graph codebases) parsed git log output with regular expressions and computed the graph layout in a single JavaScript thread — creating severe performance bottlenecks on large repositories.

F-GitGraph decouples the system into a hybrid architecture: a responsive TypeScript/Preact shell, a high-performance F# Native AOT core engine for read-heavy graph computation, and native Git CLI delegation for 100% signature-safe mutating operations.

Architecture

Concern Before (TypeScript) After (F# Native AOT)
Read commits / refs git log + regex parsing (spawn) Memory-mapped commit-graph + LibGit2 in-process
Topological sort Single-threaded JS Parallel Kahn sort with priority queue
Lane allocation Single-threaded JS Left-compact lane pool, multi-threaded
Geometry generation JS at render time Pre-computed SVG in Parallel.For
Transport JSON postMessage Binary MessagePack over stdio RPC daemon

Mutating operations intentionally remain on the Git CLI to guarantee signature and credential safety.

Roadmap

The engine ships platform-by-platform, starting on Windows and expanding to a universal release:

  • Phase 1 — Windows (in progress): F# Native AOT core, domain model, fast Git reader, parallel layout solver, stdio IPC, benchmarking, and VSIX packaging.
  • Phase 2 — Linux: port the core to Ubuntu/Fedora/Debian, resolve glibc compatibility, and stress-test against the Linux kernel repository.
  • Phase 3 — macOS: Apple Silicon (M-series ARM64) and Intel x64, Gatekeeper handling, and Retina display verification.
  • Phase 4 — Release: multi-platform CI/CD and a universal VSIX bundling all native binaries.

Installation

Search for f-gitgraph in the Extensions view, or install from:

  • VS Code Marketplace
  • Open VSX Registry

Configuration

All settings use the f-gitgraph prefix.

Setting Default Description
autoCenterCommitDetailsView true Center commit details when opened
dateFormat "Date & Time" "Date & Time", "Date Only", or "Relative"
dateType "Author Date" "Author Date" or "Commit Date"
fetchAvatars false Fetch avatars (sends email to external services); deprecated in v0.6.0
graphColours 12 defaults Colors for graph lines
graphStyle "rounded" "rounded" or "angular"
initialLoadCommits 300 Commits to load on open
loadMoreCommits 100 Commits to load on demand
maxDepthOfRepoSearch 0 Folder depth for repo search
showCurrentBranchByDefault false Show only current branch on open
showUncommittedChanges true Show uncommitted changes node
tabIconColourTheme "colour" "colour" or "grey"

Contributing

Please use Issues for bug reports, feature requests, and discussion. See the Roadmap for the current direction.

License

MIT — see LICENSE.

F-GitGraph builds upon the MIT-licensed Git Graph extension by mhutchie and the Neo-Git-Graph fork (asispts/neo-git-graph). It is maintained and published by LMO-LAB.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft