RepositoryPythonFRFrance
pvigier

pvigier/dependency-graph

A script to draw the dependency of C++ classes.

181stars
39forks
2issues
0views

🧩 Vẽ đồ thĩ phụ thuộc C++ — phát hiện vòng tròn nhanh chỉ với một lệnh

Script Python nhỏ gọn, dùng Graphviz để biến cây thư mục C++ thành đồ thị #include rõ ràng, dễ phát hiện circular dependencies.

dependency-graph của pvigier là công cụ phân tích phụ thuộc giữa các lớp C++ bằng cách quét toàn bộ thư mục, đọc lệnh #include và vẽ đồ thị phụ thuộc. Rất hữu ích khi kiểm tra vòng tròn phụ thuộc trong dự án lớn.

✨ Điểm nổi bật

  • Quét thư mục C++: tự động duyệt toàn bộ thư mục, trích xuất lệnh #include từ mỗi tệp .cpp/.h.
  • Đồ thị phụ thuộc trực quan: sinh ảnh đồ thị bằng Graphviz, hỗ trợ định dạng PNG, SVG, PDF, v.v.
  • Tùy chọn cluster: dùng -c để tạo nhóm (cluster) riêng cho từng thư mục con, dễ trực quan hoá cấu trúc dự án.
  • Tự động mở khi xong: dùng -v để xem ngay kết quả sau khi sinh đồ thị.
  • Hỗ trợ đa định dạng: chọn định dạng đầu ra bằng -f (bmp, gif, jpg, png, pdf, svg).
  • Cài đặt đơn giản: chỉ cần cài Graphviz và pip requirements.

💡 Vì sao đáng chú ý

dependency-graph khác biệt ở sự đơn giản: không cần cấu hình phức tạp, chỉ cần trỏ vào thư mục nguồn và chờ đồ thị sinh ra. Với tính năng cluster (-c), bạn có thể nhìn ngay cấu trúc tách biệt theo module/thư mục — rất giúp review kiến trúc dự án hoặc dò vòng trònhhanh.


#DependencyGraph #Cpp #Graphviz #CircularDependencies #TiniX

Similar Projects

Discover other similar projects and AI models.

RepositoryPython
mingrammer/diagrams

:art: Diagram as Code for prototyping cloud system architectures

42.8k
Oct 25, 2026
RepositoryPython
pydot/pydot

Python interface to Graphviz's Dot language

1.0k
Oct 18, 2026
RepositoryPython
git-big-picture/git-big-picture

:octopus: Git — the big picture

561
Oct 26, 2026
RepositoryPython
datnguye/dbterd

Generate the ERD as a code from dbt artifacts

347
Oct 26, 2026
RepositoryPython
tedivm/paracelsus

Visualize SQLAlchemy Databases using Mermaid or Dot Diagrams.

176
Jul 20, 2026
RepositoryPython
roo-oliv/injectable

Python Dependency Injection for Humans™

119
Sep 4, 2025
RepositoryJavaScript
pahen/madge

Create graphs from your CommonJS, AMD or ES6 module dependencies

10.2k
Jan 21, 2026
RepositoryJavaScript
sverweij/dependency-cruiser

Validate and visualize dependencies. Your rules. JavaScript, TypeScript, CoffeeScript. ES6, CommonJS, AMD.

7.3k
Oct 19, 2026
RepositoryGo
ondrajz/go-callvis

Visualize call graph of a Go program using Graphviz

6.5k
Mar 30, 2026