braedonsaunders/codeflowPublic

Paste any GitHub URL → interactive architecture map. See how files connect, find what breaks if you change something. No install, no accounts — runs entirely in your browser.

AI summary: A browser-native visualization tool that generates interactive architecture graphs directly from GitHub URLs.

Stars
5.4K
+10 today
Forks
817
Watchers
27
Open issues
0
Open PRs
1
Contributors
~17
Commits
215
Branches
8

HTMLMITCreated Dec 16, 2025Last push 12d ago+77 stars this week+265 this month

Quick answers

What is codeflow?
A browser-native visualization tool that generates interactive architecture graphs directly from GitHub URLs.
What does codeflow do?
Codeflow is a static, browser-based application designed to rapidly visualize the architectural structure and dependencies of any GitHub repository. By pasting a repository URL, the tool parses code directly on the client side using WebAssembly-powered Tree-sitter modules, bypassing the need for a backend server or installation. It renders interactive D3.js graphs that highlight file dependencies, commit frequency churn, and the potential downstream impact of modifying specific modules. The application requires absolutely zero build steps or npm installations, running purely from statically vendored assets in the browser. It provides a secure, immediate way to audit complex codebases without data leaving your machine.
Who is codeflow for?
Software architects, tech leads, and developers needing a visual grasp of complex codebases. It is extremely accessible, requiring only a modern web browser and a standard GitHub token.
How do I get started with codeflow?
Open index.html in a web browser to start exploring.
How popular is codeflow on GitHub?
braedonsaunders/codeflow has 5,389 stars and 817 forks on GitHub, and gained 77 stars in the last 7 days.
What license does codeflow use?
braedonsaunders/codeflow is released under the MIT license.

Star history

since Jul 28, 2026
02K4KJul 2026Aug 2026Sep 2026Oct 2026
5.4K stars as of Oct 4, 2026. Measured daily since Jul 28, 2026; GitHub no longer exposes earlier star timestamps.

Contribution activity

commits per day, last 52 weeks
OctNovDecJanFebMarAprMayJunJulAugSepMonWedFri2025-10-04: 0 commits2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 0 commits2025-10-10: 0 commits2025-10-11: 0 commits2025-10-12: 0 commits2025-10-13: 0 commits2025-10-14: 0 commits2025-10-15: 0 commits2025-10-16: 0 commits2025-10-17: 0 commits2025-10-18: 0 commits2025-10-19: 0 commits2025-10-20: 0 commits2025-10-21: 0 commits2025-10-22: 0 commits2025-10-23: 0 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 0 commits2025-10-28: 0 commits2025-10-29: 0 commits2025-10-30: 0 commits2025-10-31: 0 commits2025-11-01: 0 commits2025-11-02: 0 commits2025-11-03: 0 commits2025-11-04: 0 commits2025-11-05: 0 commits2025-11-06: 0 commits2025-11-07: 0 commits2025-11-09: 0 commits2025-11-10: 0 commits2025-11-11: 0 commits2025-11-12: 0 commits2025-11-13: 0 commits2025-11-14: 0 commits2025-11-15: 0 commits2025-11-16: 0 commits2025-11-17: 0 commits2025-11-18: 0 commits2025-11-19: 0 commits2025-11-20: 0 commits2025-11-21: 0 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 0 commits2025-11-25: 0 commits2025-11-26: 0 commits2025-11-27: 0 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 0 commits2025-12-02: 0 commits2025-12-03: 0 commits2025-12-04: 0 commits2025-12-05: 0 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 0 commits2025-12-09: 0 commits2025-12-10: 0 commits2025-12-11: 0 commits2025-12-12: 0 commits2025-12-13: 0 commits2025-12-14: 0 commits2025-12-15: 1 commit2025-12-16: 30 commits2025-12-17: 0 commits2025-12-18: 0 commits2025-12-19: 0 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 0 commits2025-12-23: 0 commits2025-12-24: 0 commits2025-12-25: 0 commits2025-12-26: 0 commits2025-12-27: 0 commits2025-12-28: 0 commits2025-12-29: 0 commits2025-12-30: 0 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 0 commits2026-01-06: 0 commits2026-01-07: 0 commits2026-01-08: 0 commits2026-01-09: 0 commits2026-01-10: 0 commits2026-01-11: 0 commits2026-01-12: 0 commits2026-01-13: 0 commits2026-01-14: 0 commits2026-01-15: 0 commits2026-01-16: 2 commits2026-01-17: 0 commits2026-01-18: 3 commits2026-01-19: 1 commit2026-01-20: 1 commit2026-01-21: 0 commits2026-01-22: 1 commit2026-01-23: 0 commits2026-01-24: 0 commits2026-01-25: 0 commits2026-01-26: 0 commits2026-01-27: 0 commits2026-01-28: 0 commits2026-01-29: 0 commits2026-01-30: 0 commits2026-01-31: 0 commits2026-02-01: 0 commits2026-02-02: 0 commits2026-02-03: 0 commits2026-02-04: 0 commits2026-02-05: 0 commits2026-02-06: 0 commits2026-02-07: 0 commits2026-02-08: 0 commits2026-02-09: 0 commits2026-02-10: 0 commits2026-02-11: 0 commits2026-02-12: 0 commits2026-02-13: 0 commits2026-02-14: 0 commits2026-02-15: 0 commits2026-02-16: 0 commits2026-02-17: 7 commits2026-02-18: 0 commits2026-02-19: 0 commits2026-02-20: 0 commits2026-02-21: 0 commits2026-02-22: 0 commits2026-02-23: 0 commits2026-02-24: 0 commits2026-02-25: 0 commits2026-02-26: 0 commits2026-02-27: 0 commits2026-02-28: 0 commits2026-03-01: 0 commits2026-03-02: 0 commits2026-03-03: 0 commits2026-03-04: 0 commits2026-03-05: 0 commits2026-03-06: 0 commits2026-03-07: 0 commits2026-03-08: 0 commits2026-03-09: 0 commits2026-03-10: 0 commits2026-03-11: 0 commits2026-03-12: 0 commits2026-03-13: 0 commits2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 0 commits2026-03-17: 0 commits2026-03-18: 0 commits2026-03-19: 0 commits2026-03-20: 0 commits2026-03-21: 1 commit2026-03-22: 0 commits2026-03-23: 0 commits2026-03-24: 0 commits2026-03-25: 0 commits2026-03-26: 0 commits2026-03-27: 0 commits2026-03-28: 0 commits2026-03-29: 0 commits2026-03-30: 0 commits2026-03-31: 0 commits2026-04-01: 0 commits2026-04-02: 0 commits2026-04-03: 0 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 0 commits2026-04-07: 0 commits2026-04-08: 0 commits2026-04-09: 0 commits2026-04-10: 0 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 0 commits2026-04-14: 0 commits2026-04-15: 0 commits2026-04-16: 0 commits2026-04-17: 0 commits2026-04-18: 3 commits2026-04-19: 2 commits2026-04-20: 3 commits2026-04-21: 0 commits2026-04-22: 0 commits2026-04-23: 3 commits2026-04-24: 2 commits2026-04-25: 1 commit2026-04-26: 2 commits2026-04-27: 3 commits2026-04-28: 7 commits2026-04-29: 2 commits2026-04-30: 0 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 1 commit2026-05-04: 0 commits2026-05-05: 0 commits2026-05-06: 0 commits2026-05-07: 0 commits2026-05-08: 0 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 0 commits2026-05-12: 0 commits2026-05-13: 1 commit2026-05-14: 0 commits2026-05-15: 0 commits2026-05-16: 0 commits2026-05-17: 0 commits2026-05-18: 0 commits2026-05-19: 0 commits2026-05-20: 0 commits2026-05-21: 1 commit2026-05-22: 2 commits2026-05-23: 0 commits2026-05-24: 1 commit2026-05-25: 0 commits2026-05-26: 0 commits2026-05-27: 0 commits2026-05-28: 0 commits2026-05-29: 0 commits2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 0 commits2026-06-02: 0 commits2026-06-03: 0 commits2026-06-04: 0 commits2026-06-05: 1 commit2026-06-06: 1 commit2026-06-07: 0 commits2026-06-08: 0 commits2026-06-09: 0 commits2026-06-10: 0 commits2026-06-11: 1 commit2026-06-12: 0 commits2026-06-13: 0 commits2026-06-14: 0 commits2026-06-15: 0 commits2026-06-16: 0 commits2026-06-17: 0 commits2026-06-18: 0 commits2026-06-19: 0 commits2026-06-20: 0 commits2026-06-21: 0 commits2026-06-22: 0 commits2026-06-23: 0 commits2026-06-24: 0 commits2026-06-25: 0 commits2026-06-26: 0 commits2026-06-27: 0 commits2026-06-28: 0 commits2026-06-29: 0 commits2026-06-30: 0 commits2026-07-01: 0 commits2026-07-02: 0 commits2026-07-03: 0 commits2026-07-04: 0 commits2026-07-05: 0 commits2026-07-06: 1 commit2026-07-07: 0 commits2026-07-08: 0 commits2026-07-09: 0 commits2026-07-10: 0 commits2026-07-11: 0 commits2026-07-12: 0 commits2026-07-13: 1 commit2026-07-14: 2 commits2026-07-15: 0 commits2026-07-16: 0 commits2026-07-17: 0 commits2026-07-18: 0 commits2026-07-19: 0 commits2026-07-20: 0 commits2026-07-21: 0 commits2026-07-22: 0 commits2026-07-23: 0 commits2026-07-24: 0 commits2026-07-25: 0 commits2026-07-26: 0 commits2026-07-27: 0 commits2026-07-28: 0 commits2026-07-29: 0 commits2026-07-30: 0 commits2026-07-31: 2 commits2026-08-01: 0 commits2026-08-02: 0 commits2026-08-03: 0 commits2026-08-04: 1 commit2026-08-05: 0 commits2026-08-06: 3 commits2026-08-07: 0 commits2026-08-08: 0 commits2026-08-09: 0 commits2026-08-10: 0 commits2026-08-11: 0 commits2026-08-12: 0 commits2026-08-13: 0 commits2026-08-14: 0 commits2026-08-15: 0 commits2026-08-16: 0 commits2026-08-17: 3 commits2026-08-18: 17 commits2026-08-19: 9 commits2026-08-20: 3 commits2026-08-21: 2 commits2026-08-22: 0 commits2026-08-23: 2 commits2026-08-24: 0 commits2026-08-25: 0 commits2026-08-26: 0 commits2026-08-27: 0 commits2026-08-28: 1 commit2026-08-29: 0 commits2026-08-30: 1 commit2026-08-31: 3 commits2026-09-01: 7 commits2026-09-02: 1 commit2026-09-03: 4 commits2026-09-04: 2 commits2026-09-05: 11 commits2026-09-06: 2 commits2026-09-07: 0 commits2026-09-08: 0 commits2026-09-09: 0 commits2026-09-10: 1 commit2026-09-11: 0 commits2026-09-12: 0 commits2026-09-13: 0 commits2026-09-14: 0 commits2026-09-15: 0 commits2026-09-16: 0 commits2026-09-17: 0 commits2026-09-18: 0 commits2026-09-19: 0 commits2026-09-20: 0 commits2026-09-21: 0 commits2026-09-22: 0 commits2026-09-23: 0 commits2026-09-24: 0 commits2026-09-25: 0 commits2026-09-26: 0 commits2026-09-27: 0 commits2026-09-28: 0 commits2026-09-29: 0 commits2026-09-30: 0 commits2026-10-01: 0 commits2026-10-02: 0 commits2026-10-03: 0 commits
163 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Permissive license

    MIT

  • Continuous integration

    Automated checks passing

What codeflow does

Codeflow is a static, browser-based application designed to rapidly visualize the architectural structure and dependencies of any GitHub repository. By pasting a repository URL, the tool parses code directly on the client side using WebAssembly-powered Tree-sitter modules, bypassing the need for a backend server or installation. It renders interactive D3.js graphs that highlight file dependencies, commit frequency churn, and the potential downstream impact of modifying specific modules. The application requires absolutely zero build steps or npm installations, running purely from statically vendored assets in the browser. It provides a secure, immediate way to audit complex codebases without data leaving your machine.

Software architects, tech leads, and developers needing a visual grasp of complex codebases. It is extremely accessible, requiring only a modern web browser and a standard GitHub token.

  • Browser-Native Parsing: Utilizes WebAssembly Tree-sitter modules to securely parse code entirely on the client side.
  • Interactive Visualization: Employs D3.js to render explorable, zoomable graphs mapping file dependencies and structures.
  • Churn Analysis: Color-codes architectural nodes based on Git commit frequency to instantly identify development hot spots.
  • Blast Radius Mapping: Visually highlights the downstream impact and coupled files when specific modules are modified.
  • Zero Dependencies: Runs entirely from statically vendored assets in the browser without requiring npm installs or accounts.

Where teams use it

Architectural Auditing

Helps technical leads quickly understand the dependency structures of newly inherited or massively complex legacy repositories.

Refactoring Planning

Identifies tightly coupled modules and high-churn files to prioritize technical debt reduction and refactoring efforts.

Onboarding Visualization

Provides new developers with an instant visual map of how different components and directories in a codebase interact.

Impact Assessment

Allows engineers to visually assess the potential 'blast radius' before executing risky core changes across multiple files.

Getting started: Open index.html in a web browser to start exploring.

README

main branch

CodeFlow

Visualize Your Codebase Architecture in Seconds

Zero setup. No installation. Just paste a GitHub URL.

License: MIT PRs Welcome

Try it Now · Report Bug · Request Feature

CodeFlow Screenshot

Why CodeFlow?

Ever opened a new codebase and felt completely lost? CodeFlow turns any GitHub repository or local codebase into an interactive architecture map in seconds.

  • No installation required — runs entirely in your browser
  • No data collection — your code never leaves your machine
  • No accounts — just paste a URL or select local files and go
  • Works offline — analyze local files without internet
Paste URL / Select Files -> See Architecture -> Make Better Decisions

Features

Interactive Dependency Graph

See how your files connect at a glance. Click any node to highlight its dependencies. Drag, zoom, and explore. The Code view keeps that map and opens the selected file plus its connected files as full-file cards on the canvas, grouped by directory.

Blast Radius Analysis

"If I change this file, what breaks?" — CodeFlow answers this instantly. Select any file and see exactly how many files would be affected by changes.

Code Ownership

Know who owns what. See the top contributors for any file based on git history. Perfect for code reviews and knowing who to ask.

Security Scanner

Automatic detection of:

  • Hardcoded secrets & API keys
  • SQL injection vulnerabilities
  • Dangerous eval() usage
  • Debug statements in production code

Test files, fixtures, docs/, and common tooling directories (.github/, .claude/, scripts/) are excluded from the XSS/shell-execution checks, since findings there don't reflect the shipped product's attack surface. The hardcoded-secret check exempts only tests, fixtures, and docs: CI workflows, hooks, and deploy scripts are executable code, so a real credential there is still a real leak.

Pattern Detection

Automatically identifies:

  • Singleton patterns
  • Factory patterns
  • Observer/Event patterns
  • React custom hooks
  • Anti-patterns (God Objects, high coupling)

Health Score

Get an instant A-F grade for your codebase based on:

  • Dead code percentage
  • Circular dependencies
  • Coupling metrics
  • Security issues

Activity Heatmap

Color files by commit frequency to see which parts of your codebase are most actively developed.

PR Impact Analysis

Paste a PR URL to see exactly which files it affects and calculate the blast radius of proposed changes.

CodeFlow Card (GitHub Action)

Health grade, scale, fragility, and hidden costs as a self-updating SVG on your README — recomputed every merge, with optional thermal-receipt PR comments. See card/.

Markdown & Wiki-Link Graph

Point CodeFlow at an Obsidian vault or any markdown directory to see notes as a connected graph. Both [[wiki-links]] and [text](./relative.md) links become edges; each note is a note-layer node (distinct color) with a dependencies[] array in the JSON export.

Local File Analysis

Analyze code directly from your computer without uploading to GitHub:

  • Privacy First: Your code never leaves your machine
  • Offline Support: Works without internet connection
  • Drag & Drop: Simply drag files or folders to analyze
  • Folder Scanning: Recursively analyze entire project structures
  • Exclude Patterns: Skip attachments, caches, generated assets, and other irrelevant paths before scanning
  • Instant Results: All processing happens in your browser

CodeFlow Card

A GitHub Action that drops an auto-updating SVG card on your README, recomputed on every merge by the same analyzer as the web app. Five styles, accent presets, opt-in PR receipts, and a privacy mode for public repos. The card adapts to the viewer's light/dark theme automatically.

CodeFlow card — compact style

See card/ for setup, or jump to the style gallery below.


Privacy First

Your code stays on your machine. CodeFlow:

  • Runs 100% in the browser
  • Makes API calls directly from your browser to GitHub
  • Never stores your code or tokens
  • Works with private repos (just add your token locally)
  • No analytics or tracking

Your GitHub token (if used) is only stored in your browser's memory and is cleared when you close the tab.


Quick Start

Option 1: Use Online (Recommended)

Just visit CodeFlow and paste any GitHub URL.

Option 2: Self-Host

# Clone the repo
git clone https://github.com/braedonsaunders/codeflow.git

# That's it! Just open index.html in your browser
open index.html

No build process. No npm install. Clone the whole repository: index.html loads pinned, checked-in browser dependencies from vendor/, so a fresh local launch works without a network connection.

Option 3: Local CLI

From this repo (or npx once published): npx codeflow . serves the same index.html UI, watches the folder, and opens it in your browser.

Option 4: Analyze Local Files

You can now analyze code directly from your local machine without uploading to GitHub:

  1. Open CodeFlow in your browser
  2. Click the "Open Folder" button
  3. Select the folder or files you want to analyze
  4. CodeFlow will process them entirely in your browser

Perfect for:

  • Private projects you don't want to upload
  • Offline development
  • Quick local analysis before committing
  • Working with sensitive code

Usage

Public Repositories

Just paste: facebook/react
Or full URL: https://github.com/facebook/react

Private Repositories

  1. Create a GitHub Personal Access Token with repo scope
  2. Paste it in the Token field
  3. Analyze your private repos

Local Files

Click the "Open Folder" button to analyze code from your computer:

  • Folder Analysis: Select a folder to analyze all supported files recursively
  • File Selection: Choose specific files to analyze
  • Drag & Drop: Drag files or folders directly onto the page
  • Custom Excludes: Add patterns like uploads/**, **/cache/**, or *.png before scanning

Generated dependencies, caches, build output, local worktrees, and test artifacts are pruned automatically (for example node_modules, .next, .turbo, .local, dist, and playwright-report). Individual files over 2 MB remain visible in results but their contents are not parsed.

All processing happens locally in your browser - nothing is uploaded.

Shareable Links

After analysis, click the "Share" button to copy a shareable link. Anyone can re-run the same analysis.

Export Reports

Export your analysis in multiple formats for further processing:

  • JSON Report - Complete analysis data including:

    • Repository metadata and health score
    • All files with functions, dependencies, and churn data
    • Complete function statistics with callers and usage metrics
    • Security issues, patterns, and architecture issues
    • Duplicate code detection and layer violations
    • Suggestions and recommendations
    • Language breakdown and folder structure

    Perfect for programmatic analysis, CI/CD integration, or custom reporting tools.

  • Markdown Report - Human-readable formatted report

  • Plain Text Report - Simple text format

  • SVG Image - Export the dependency graph visualization

  • PDF Document - Export the dependency graph as a printable PDF

  • Raw JSON - Simplified data export

Click the "Export" button in the top bar after analysis to access all export options.


Supported Languages

CodeFlow extracts functions and analyzes dependencies for:

Language Extensions
JavaScript .js, .jsx
TypeScript .ts, .tsx
HTML (inline scripts) .html, .htm, .xhtml
Python .py
Java .java
Go .go
Ruby .rb
PHP .php
Vue .vue
Svelte .svelte
Rust .rs
C .c, .h
C++ .cpp, .cc, .cxx, .hpp, .hh, .hxx
C# .cs
Swift .swift
Kotlin .kt, .kts
Scala .scala, .sc
Groovy .groovy, .gvy
Elixir .ex, .exs
Erlang .erl, .hrl
Haskell .hs, .lhs
Lua .lua
R .r, .R
Julia .jl
Dart .dart
Perl .pl, .pm
Shell .sh, .bash, .zsh, .fish
PowerShell .ps1, .psm1, .psd1
F# .fs, .fsi, .fsx
OCaml .ml, .mli
Clojure .clj, .cljs, .cljc
Elm .elm
VBA .vba, .bas, .cls, .xlsm, .xlsb, .xlam
Delphi / FreePascal / Object Pascal .pas, .pp, .dpr, .dpk, .lpr, .inc

Pascal support is heuristic. It recognizes routines and uses unit dependencies while filtering strings and Pascal comment forms; unsupported language features fall back gracefully.


Visualization Modes

Mode Description
Folder Color by directory structure
Layer Color by architectural layer (UI, Services, Utils, etc.)
Churn Color by commit frequency (hot spots)
Blast Color by impact when a file is selected
Code Same graph, with selected and connected files as full-file cards grouped by directory

Keyboard Shortcuts

Key Action
Enter Analyze repository
+ / - Zoom in/out
Escape Close modal

API Limits

GitHub API has rate limits:

  • Without token: 60 requests/hour
  • With Personal Access Token: 5,000 requests/hour
  • With GitHub App: 5,000 requests/hour per installation

Authentication Methods

Personal Access Token (PAT)
  1. Create a GitHub Personal Access Token with repo scope
  2. Paste it in the Token field
  3. Analyze your private repos
GitHub App Authentication

For teams and organizations, GitHub App provides better security and higher rate limits:

  1. Create a GitHub App with repository permissions
  2. Install the app on your organization or personal account
  3. Generate an installation access token
  4. Paste the token in the Token field

Benefits of GitHub App:

  • Fine-grained permissions control
  • Revocable access per installation
  • Higher rate limits (5,000 requests/hour)
  • Audit logging and security monitoring
  • No need to share personal credentials

For larger repositories or team usage, we recommend using GitHub App authentication.


Architecture

┌─────────────────────────────────────────────────┐
│                   CodeFlow                      │
├─────────────────────────────────────────────────┤
│  ┌──────────┐  ┌──────────┐  ┌──────────┐       │
│  │  Parser  │  │  GitHub  │  │    D3    │       │
│  │  Module  │  │   API    │  │  Graph   │       │
│  └──────────┘  └──────────┘  └──────────┘       │
│        │              │              │          │
│        └──────────────┼──────────────┘          │
│                       │                         │
│              ┌────────▼────────┐                │
│              │   React App     │                │
│              │ (Static Assets) │                │
│              └─────────────────┘                │
└─────────────────────────────────────────────────┘

Zero build dependencies to install. Browser libraries and required Tree-sitter WASM files are pinned under vendor/, with source URLs, SHA-256 digests, and license notices. To refresh them:

node scripts/vendor-browser-deps.mjs

The vendored runtime includes:

  • React 18
  • D3.js 7
  • Babel (for JSX)

Contributing

We love contributions! Here's how:

  1. Fork the repo
  2. Make your changes to index.html
  3. Test locally (just open in browser)
  4. Submit a PR

Node.js unit tests live under tests/ and run with no dependencies:

node --test tests/*.test.mjs tests/*.smoke.js

tests/verify-brain-vault.mjs is an optional end-to-end script that always verifies the bundled fixtures and will also scan a real local vault when you explicitly set BRAIN_VAULT=/path/to/vault.

Ideas for Contributions

  • Add support for more languages
  • Improve function extraction regex
  • Add more design pattern detection
  • Export to different formats (PNG, PDF)
  • Add code complexity metrics

FAQ

Q: How does it work without a backend?

CodeFlow runs entirely in your browser. It calls the GitHub API directly from your browser and processes everything client-side.

Q: Is my code safe?

Yes. Your code is fetched directly from GitHub to your browser. Nothing is sent to any server we control. The app and its pinned browser dependencies are checked into this repository for inspection.

Q: Can I use it offline?

Yes. Clone the complete repository, open index.html, then use the local file analysis feature. All required browser and parser assets are checked in, so even a cold first load works without internet. GitHub URL analysis still requires access to GitHub's API.

Q: Why is analysis slow?

We make individual API calls for each file to get content. With a token, you get higher rate limits and faster analysis.

Q: How accurate is the dependency analysis?

It's heuristic: unique functions are matched by name, while duplicate function names are scoped by file and explicit imports before edges are created. It may still miss dynamic imports or renamed runtime references, so it's designed for a quick overview, not 100% accuracy.


Card Style Gallery

All examples below are real cards rendered by the CodeFlow Card Action against this very repo. Pick one and drop it on your README.

style: compact — default

compact

style: compact with show-grade: false, show-score: false

For public READMEs where you'd rather show data than a letter grade. The card stays informational — files, functions, LOC, languages, tests — without the judgmental bits.

compact private

accent — any preset or CSS color

The accent recolors the sparklines, links, and pin. Presets: purple (default), teal, cyan, green, pink, blue, amber, red. Or pass any CSS color (e.g. #ff6b6b).

compact teal

compact pink

style: row — status-bar strip

row

style: minimal — single text line

minimal

style: hero — splashy gradient

hero

hero with show-grade: false:

hero private

style: detailed — information-rich

Everything: grade, scale, language breakdown, composition (connections, tests, folders, function stats, patterns), top folders, fragility, hidden costs.

detailed

detailed with show-grade: false:

detailed private


Star History

If you find CodeFlow useful, please star the repo.


License

MIT License — use it however you want.


Built by developers, for developers

Stop guessing. Start seeing.

View on GitHub

Recent activity

commits and pull requests

Code frequency

additions and deletions
+5.6K-5.6KWeek of 2025-12-14: +4,637 linesWeek of 2025-12-14: -768 linesWeek of 2025-12-21: +0 linesWeek of 2025-12-21: -0 linesWeek of 2025-12-28: +0 linesWeek of 2025-12-28: -0 linesWeek of 2026-01-04: +0 linesWeek of 2026-01-04: -0 linesWeek of 2026-01-11: +444 linesWeek of 2026-01-11: -27 linesWeek of 2026-01-18: +344 linesWeek of 2026-01-18: -155 linesWeek of 2026-01-25: +0 linesWeek of 2026-01-25: -0 linesWeek of 2026-02-01: +0 linesWeek of 2026-02-01: -0 linesWeek of 2026-02-08: +0 linesWeek of 2026-02-08: -0 linesWeek of 2026-02-15: +786 linesWeek of 2026-02-15: -189 linesWeek of 2026-02-22: +0 linesWeek of 2026-02-22: -0 linesWeek of 2026-03-01: +0 linesWeek of 2026-03-01: -0 linesWeek of 2026-03-08: +0 linesWeek of 2026-03-08: -0 linesWeek of 2026-03-15: +0 linesWeek of 2026-03-15: -0 linesWeek of 2026-03-22: +0 linesWeek of 2026-03-22: -0 linesWeek of 2026-03-29: +0 linesWeek of 2026-03-29: -0 linesWeek of 2026-04-05: +0 linesWeek of 2026-04-05: -0 linesWeek of 2026-04-12: +342 linesWeek of 2026-04-12: -73 linesWeek of 2026-04-19: +3,869 linesWeek of 2026-04-19: -1,108 linesWeek of 2026-04-26: +2,378 linesWeek of 2026-04-26: -74 linesWeek of 2026-05-03: +12 linesWeek of 2026-05-03: -12 linesWeek of 2026-05-10: +94 linesWeek of 2026-05-10: -5 linesWeek of 2026-05-17: +2,125 linesWeek of 2026-05-17: -66 linesWeek of 2026-05-24: +6 linesWeek of 2026-05-24: -16 linesWeek of 2026-05-31: +493 linesWeek of 2026-05-31: -70 linesWeek of 2026-06-07: +361 linesWeek of 2026-06-07: -41 linesWeek of 2026-06-14: +0 linesWeek of 2026-06-14: -0 linesWeek of 2026-06-21: +0 linesWeek of 2026-06-21: -0 linesWeek of 2026-06-28: +0 linesWeek of 2026-06-28: -0 linesWeek of 2026-07-05: +120 linesWeek of 2026-07-05: -7 linesWeek of 2026-07-12: +2,634 linesWeek of 2026-07-12: -30 linesWeek of 2026-07-19: +0 linesWeek of 2026-07-19: -0 linesWeek of 2026-07-26: +5,600 linesWeek of 2026-07-26: -152 linesWeek of 2026-08-02: +444 linesWeek of 2026-08-02: -2,002 linesWeek of 2026-08-09: +0 linesWeek of 2026-08-09: -0 linesWeek of 2026-08-16: +5,410 linesWeek of 2026-08-16: -681 linesWeek of 2026-08-23: +664 linesWeek of 2026-08-23: -86 linesWeek of 2026-08-30: +5,182 linesWeek of 2026-08-30: -470 linesWeek of 2026-09-06: +87 linesWeek of 2026-09-06: -3 linesWeek of 2026-09-13: +0 linesWeek of 2026-09-13: -0 linesWeek of 2026-09-20: +0 linesWeek of 2026-09-20: -0 linesWeek of 2026-09-27: +0 linesWeek of 2026-09-27: -0 linesDec 14, 2025Sep 27, 2026
+36K lines added, -6K removed over the last year.

Commits per week

last 52 weeks
340Week of 2025-10-04: 0 commitsWeek of 2025-10-11: 0 commitsWeek of 2025-10-18: 0 commitsWeek of 2025-10-25: 0 commitsWeek of 2025-11-01: 0 commitsWeek of 2025-11-09: 0 commitsWeek of 2025-11-16: 0 commitsWeek of 2025-11-23: 0 commitsWeek of 2025-11-30: 0 commitsWeek of 2025-12-07: 0 commitsWeek of 2025-12-14: 31 commitsWeek of 2025-12-21: 0 commitsWeek of 2025-12-28: 0 commitsWeek of 2026-01-04: 0 commitsWeek of 2026-01-11: 2 commitsWeek of 2026-01-18: 6 commitsWeek of 2026-01-25: 0 commitsWeek of 2026-02-01: 0 commitsWeek of 2026-02-08: 0 commitsWeek of 2026-02-15: 7 commitsWeek of 2026-02-22: 0 commitsWeek of 2026-03-01: 0 commitsWeek of 2026-03-08: 0 commitsWeek of 2026-03-15: 1 commitsWeek of 2026-03-22: 0 commitsWeek of 2026-03-29: 0 commitsWeek of 2026-04-05: 0 commitsWeek of 2026-04-12: 3 commitsWeek of 2026-04-19: 11 commitsWeek of 2026-04-26: 14 commitsWeek of 2026-05-03: 1 commitsWeek of 2026-05-10: 1 commitsWeek of 2026-05-17: 3 commitsWeek of 2026-05-24: 1 commitsWeek of 2026-05-31: 2 commitsWeek of 2026-06-07: 1 commitsWeek of 2026-06-14: 0 commitsWeek of 2026-06-21: 0 commitsWeek of 2026-06-28: 0 commitsWeek of 2026-07-05: 1 commitsWeek of 2026-07-12: 3 commitsWeek of 2026-07-19: 0 commitsWeek of 2026-07-26: 2 commitsWeek of 2026-08-02: 4 commitsWeek of 2026-08-09: 0 commitsWeek of 2026-08-16: 34 commitsWeek of 2026-08-23: 3 commitsWeek of 2026-08-30: 29 commitsWeek of 2026-09-06: 3 commitsWeek of 2026-09-13: 0 commitsWeek of 2026-09-20: 0 commitsWeek of 2026-09-27: 0 commitsOct 4, 2025Sep 27, 2026
163 commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 1 commitsSun 1:00 — 0 commitsSun 2:00 — 1 commitsSun 3:00 — 0 commitsSun 4:00 — 0 commitsSun 5:00 — 0 commitsSun 6:00 — 0 commitsSun 7:00 — 0 commitsSun 8:00 — 0 commitsSun 9:00 — 0 commitsSun 10:00 — 1 commitsSun 11:00 — 1 commitsSun 12:00 — 1 commitsSun 13:00 — 0 commitsSun 14:00 — 3 commitsSun 15:00 — 0 commitsSun 16:00 — 2 commitsSun 17:00 — 3 commitsSun 18:00 — 0 commitsSun 19:00 — 1 commitsSun 20:00 — 0 commitsSun 21:00 — 0 commitsSun 22:00 — 0 commitsSun 23:00 — 0 commitsMon 0:00 — 0 commitsMon 1:00 — 0 commitsMon 2:00 — 0 commitsMon 3:00 — 1 commitsMon 4:00 — 0 commitsMon 5:00 — 0 commitsMon 6:00 — 0 commitsMon 7:00 — 0 commitsMon 8:00 — 0 commitsMon 9:00 — 0 commitsMon 10:00 — 0 commitsMon 11:00 — 0 commitsMon 12:00 — 0 commitsMon 13:00 — 0 commitsMon 14:00 — 3 commitsMon 15:00 — 4 commitsMon 16:00 — 0 commitsMon 17:00 — 0 commitsMon 18:00 — 1 commitsMon 19:00 — 1 commitsMon 20:00 — 0 commitsMon 21:00 — 2 commitsMon 22:00 — 3 commitsMon 23:00 — 1 commitsTue 0:00 — 9 commitsTue 1:00 — 3 commitsTue 2:00 — 1 commitsTue 3:00 — 1 commitsTue 4:00 — 2 commitsTue 5:00 — 5 commitsTue 6:00 — 11 commitsTue 7:00 — 0 commitsTue 8:00 — 0 commitsTue 9:00 — 6 commitsTue 10:00 — 1 commitsTue 11:00 — 1 commitsTue 12:00 — 2 commitsTue 13:00 — 1 commitsTue 14:00 — 7 commitsTue 15:00 — 3 commitsTue 16:00 — 8 commitsTue 17:00 — 2 commitsTue 18:00 — 0 commitsTue 19:00 — 0 commitsTue 20:00 — 5 commitsTue 21:00 — 0 commitsTue 22:00 — 3 commitsTue 23:00 — 1 commitsWed 0:00 — 1 commitsWed 1:00 — 0 commitsWed 2:00 — 2 commitsWed 3:00 — 0 commitsWed 4:00 — 0 commitsWed 5:00 — 0 commitsWed 6:00 — 0 commitsWed 7:00 — 0 commitsWed 8:00 — 0 commitsWed 9:00 — 0 commitsWed 10:00 — 0 commitsWed 11:00 — 2 commitsWed 12:00 — 1 commitsWed 13:00 — 0 commitsWed 14:00 — 1 commitsWed 15:00 — 0 commitsWed 16:00 — 1 commitsWed 17:00 — 0 commitsWed 18:00 — 2 commitsWed 19:00 — 0 commitsWed 20:00 — 1 commitsWed 21:00 — 0 commitsWed 22:00 — 2 commitsWed 23:00 — 0 commitsThu 0:00 — 1 commitsThu 1:00 — 0 commitsThu 2:00 — 1 commitsThu 3:00 — 0 commitsThu 4:00 — 0 commitsThu 5:00 — 0 commitsThu 6:00 — 0 commitsThu 7:00 — 0 commitsThu 8:00 — 0 commitsThu 9:00 — 0 commitsThu 10:00 — 0 commitsThu 11:00 — 1 commitsThu 12:00 — 0 commitsThu 13:00 — 1 commitsThu 14:00 — 4 commitsThu 15:00 — 2 commitsThu 16:00 — 1 commitsThu 17:00 — 1 commitsThu 18:00 — 0 commitsThu 19:00 — 0 commitsThu 20:00 — 1 commitsThu 21:00 — 2 commitsThu 22:00 — 0 commitsThu 23:00 — 2 commitsFri 0:00 — 1 commitsFri 1:00 — 0 commitsFri 2:00 — 2 commitsFri 3:00 — 0 commitsFri 4:00 — 0 commitsFri 5:00 — 0 commitsFri 6:00 — 1 commitsFri 7:00 — 0 commitsFri 8:00 — 0 commitsFri 9:00 — 0 commitsFri 10:00 — 1 commitsFri 11:00 — 0 commitsFri 12:00 — 0 commitsFri 13:00 — 1 commitsFri 14:00 — 1 commitsFri 15:00 — 1 commitsFri 16:00 — 1 commitsFri 17:00 — 0 commitsFri 18:00 — 2 commitsFri 19:00 — 0 commitsFri 20:00 — 1 commitsFri 21:00 — 2 commitsFri 22:00 — 0 commitsFri 23:00 — 0 commitsSat 0:00 — 3 commitsSat 1:00 — 1 commitsSat 2:00 — 0 commitsSat 3:00 — 0 commitsSat 4:00 — 0 commitsSat 5:00 — 0 commitsSat 6:00 — 0 commitsSat 7:00 — 0 commitsSat 8:00 — 0 commitsSat 9:00 — 0 commitsSat 10:00 — 2 commitsSat 11:00 — 1 commitsSat 12:00 — 0 commitsSat 13:00 — 0 commitsSat 14:00 — 1 commitsSat 15:00 — 0 commitsSat 16:00 — 0 commitsSat 17:00 — 0 commitsSat 18:00 — 0 commitsSat 19:00 — 0 commitsSat 20:00 — 9 commitsSat 21:00 — 0 commitsSat 22:00 — 0 commitsSat 23:00 — 0 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.

Who is committing

last 52 weeks
Maintainer commits84 (39%)
Community commits131 (61%)

215 commits in total over the last year.

DateListRankStars gained
Jul 14, 2026daily#14+5
  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    272.8K stars · JavaScript

  • f/prompts.chat

    f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.

    172K stars · HTML

  • DietrichGebert/ponytail

    Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.

    154.6K stars · JavaScript

  • ripienaar/free-for-dev

    A list of SaaS, PaaS and IaaS offerings that have free tiers of interest to devops and infradev

    139.2K stars · HTML

  • Graphify-Labs/graphify

    Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local deterministic AST parsing, every edge explained, no vector store.

    123.7K stars · Python

  • rtk-ai/rtk

    CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies

    82.4K stars · Rust