Zeba Academy Git Visualizer ๐
๐ Overview
Zeba Academy Git Visualizer is a Flutter package that provides beautiful and interactive Git concept visualization widgets.
It helps developers, students, and educators understand Git workflows visually.
This package allows you to display:
- Commit graphs
- Branch flows
- Merge operations
- Pull request workflows
- Merge conflicts
- Git history timelines
Built for coding platforms, developer tools, and programming education apps.
โจ Features
๐ณ Commit Graph Visualization
Visualize Git commits with an easy-to-understand graph UI.
Features:
- Commit nodes
- Commit messages
- Author details
- Commit flow
- Repository history display
Example:
main
โ Initial commit
|
โ Added authentication
|
โ Fixed bugs
๐ฟ Branch Flow Visualization
Display Git branches and their relationships.
Supports:
- Main branch
- Feature branches
- Development branches
- Custom branch names
Example:
main
|
|---- feature/login
|
|---- feature/payment
๐ Merge Visualization
Teach Git merge concepts visually.
Features:
- Source branch
- Target branch
- Merge direction
- Merge learning UI
Example:
feature/profile
โ
MERGE
โ
main
๐ฅ Pull Request Flow
Create GitHub-style pull request learning screens.
Features:
- PR title
- Source branch
- Target branch
- Merge status
Example:
feature/dashboard
โ
Pull Request
โ
main
โ ๏ธ Conflict Learning UI
Visualize Git merge conflicts.
Features:
- Compare changes
- Show OURS code
- Show THEIRS code
- Conflict explanation
Example:
<<<<<<< OURS
Theme: Blue
=======
Theme: Red
>>>>>>> THEIRS
๐ Git History Timeline
Display repository history as a timeline.
Includes:
- Commit date
- Commit message
- Author
- History order
๐ฆ Installation
Add dependency:
dependencies:
zeba_academy_git_visualizer: ^1.0.0
Run:
flutter pub get
๐ Usage
Import:
import 'package:zeba_academy_git_visualizer/zeba_academy_git_visualizer.dart';
Commit Graph Example
CommitGraph(
commits:[
GitCommit(
id:"a001",
message:"Initial commit",
author:"Sufyan",
date:DateTime.now(),
),
GitCommit(
id:"a002",
message:"Added login feature",
author:"Developer",
date:DateTime.now(),
)
]
)
Branch Example
BranchFlow(
branches:[
GitBranch(
name:"main",
commits:[],
),
GitBranch(
name:"feature/login",
commits:[],
)
]
)
Pull Request Example
PRFlow(
request: PullRequest(
title:"Add profile module",
fromBranch:"feature/profile",
targetBranch:"main",
merged:true,
)
)
๐ Project Structure
lib/
โโโ models/
โ โโโ git_commit.dart
โ โโโ git_branch.dart
โ โโโ pull_request.dart
โโโ widgets/
โ โโโ commit_graph.dart
โ โโโ branch_flow.dart
โ โโโ merge_view.dart
โ โโโ pr_flow.dart
โ โโโ conflict_view.dart
โ โโโ history_timeline.dart
โโโ zeba_academy_git_visualizer.dart
๐ฏ Use Cases
Perfect for:
โ Coding learning apps โ Git tutorials โ Developer dashboards โ Programming courses โ Bootcamp platforms โ Student projects โ Developer portfolio apps
๐ก Package Highlights
- No API required
- No GitHub dependency
- Offline friendly
- Lightweight widgets
- Fully customizable
- Beginner friendly
๐งช Testing
Run tests:
flutter test
๐ค Contributing
Contributions are welcome.
Create a branch:
git checkout -b feature/new-feature
Commit:
git commit -m "Add new feature"
Push:
git push origin feature/new-feature
Create Pull Request.
๐จโ๐ป About Me
โจ Iโm Sufyan bin Uzayr, an open-source developer passionate about building and sharing meaningful projects.
Website:
LinkedIn:
https://www.linkedin.com/in/sufyanism
๐ Zeba Academy
Your all-in-one learning hub!
Zeba Academy is a learning platform dedicated to:
- Coding
- Technology
- Development
- Practical skills
Explore:
Website:
Courses:
YouTube:
https://www.youtube.com/@zeba.academy
Instagram:
https://www.instagram.com/zeba.academy/
๐ License
This project is licensed under the:
GNU General Public License v3.0 (GPL-3.0)
You are free to:
- Use
- Modify
- Share
- Improve
According to GPL-3.0 conditions.
โญ Support
If you like this package:
โญ Star the repository
โญ Share with developers
โญ Contribute improvements
Thank you for using Zeba Academy Git Visualizer โค๏ธ