Skip to content

ezraaslan/GitGarden

Repository files navigation

GitGarden

GitGarden turns your Git commit history into a growing piece of terminal art.
Every repository starts as a seed and evolves over time — sprouting, flowering, and eventually becoming a tree as your project gains commits.

The goal is simple: make progress visible in a way that feels alive.


How It Works

GitGarden reads your repository’s commit log and draws a plant directly in your terminal:

  • 1 commit → Seed
  • 2–20 commits → Sprout
  • 21–400 commits → Flower
  • 41+ commits → Tree

Each node represents a commit, and you can move through them to inspect details like the hash, author, date, and message.


Features

  • Terminal-based visualization of Git history
  • Interactive navigation between commits
  • Procedurally generated plants (no two look the same)
  • Colorized ANSI output
  • Automatically scales with repository size

Roadmap

  • Branch visualization
  • More wildlife/environment
  • Save plant snapshots as images
  • Custom themes
  • Display repo contributors as birds

Contributing

Feel free to open issues for ideas, bugs, or improvements. Pull requests are welcome. Any additions, especially on the ASCII art, are encouraged. :)


Development

We are constantly working to improve GitGarden and add new features. The main branch is stable and usable. Active development and experiments happen on other branches.

Requirements

  • Python 3.7+
  • Git installed and available in your system PATH
  • A terminal that supports ANSI colors
  • pip (auto comes with Python)

Cygwin Users: Make sure you install Python packages inside Cygwin:

python3 -m pip install --upgrade readchar

Installation

Clone the repository:

git clone https://github.com/ezraaslan/GitGarden.git
cd GitGarden
pip install -r requirements.txt
python main.py

Notes

  • Tested with Python 3.9+. Earlier versions may work but have not been fully tested.
  • If colors look wrong on Windows, use Windows Terminal or enable ANSI support.

About

Visualize your Github graphs as ASCII flowers and trees in the terminal.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages