Transform your Git commit history into a beautiful symphony with 3D visualizations
GitSymphony combines three incompatible technologies into one harmonious experience:
- Git (version control) + Web Audio API (music generation) + Three.js (3D graphics)
- Real git integration - Analyzes actual repositories via backend API
- Multiple instruments - Different file types play different instruments:
- JavaScript/TypeScript โ Synth
- Python/Java โ Piano
- Go/Rust โ Bass
- CSS/HTML/Markdown โ Pluck
- Intelligent note mapping:
- More additions โ Higher pitch
- Total changes โ Note duration
- Big commits (>100 changes) โ Play chords
- Pentatonic scale - Always sounds musical
- Commit galaxy - Each commit is a sphere in 3D space
- Color coding:
- Red โ Large commits (>100 changes)
- Orange โ Medium commits (>50 changes)
- Cyan โ Addition-heavy commits
- Light cyan โ Small changes
- Spiral layout - Commits arranged in a time-based spiral
- Real-time highlighting - Active commit pulses and scales up
- Rotating camera - Smooth orbital view
- ๐ Analyze any local git repository or GitHub URL
โถ๏ธ Play/Stop your git symphony- ๐ Real-time sync between audio and visual highlighting
- ๐ Dark/Light mode toggle
- ๐จ Interactive 3D - Drag to rotate, scroll to zoom
# Clone the repository
git clone https://github.com/KHemanthRaju/gitsymphony.git
cd gitsymphony
# Install dependencies
npm install
# Run both frontend and backend
npm run dev:allOpen http://localhost:5174 in your browser and start analyzing repositories!
# Terminal 1 - Backend API (port 3001)
npm run server
# Terminal 2 - Frontend (port 5173)
npm run dev- Enter
.to analyze the current directory - Or paste any public GitHub URL:
https://github.com/user/repo - Click Analyze to load commits
- Click Play to hear your git symphony!
- Analyze: Backend API uses
simple-gitto parse repository history - Map: Converts commit data (additions, deletions, file types) to musical parameters
- Visualize: Creates 3D representation using Three.js
- Play: Generates audio using Tone.js with multiple instruments and highlights commits in real-time
- Pitch: Based on lines added (more additions = higher notes)
- Duration: Based on total changes (more changes = longer notes)
- Scale: Pentatonic scale for pleasant harmonies
- Backend API to parse real git repos
- 3D visualization with Three.js
- Multiple instrument tracks based on file types
- Real-time commit highlighting
- Chord generation for large commits
- Color-coded commit visualization
- Export to MIDI/MP3
- Live mode with git hooks (Kiro integration)
- Branch visualization
- Tempo control
- Multiple repo comparison
- Spec-driven development documentation
- Vite - Lightning-fast build tool
- Tone.js - Web Audio API framework for music generation
- Three.js - 3D graphics and visualization
- Tailwind CSS - Utility-first styling
- shadcn/ui - Beautiful UI components
- Vanilla JavaScript - No framework overhead
- Node.js + Express - REST API server
- simple-git - Git repository parsing
- CORS - Cross-origin support
- Kiro AI - AI-powered development assistant
- Playwright - Browser automation for screenshots
- FFmpeg - Video generation from screenshots
Watch GitSymphony in action:
https://github.com/KHemanthRaju/gitsymphony/raw/main/screenshots/gitsymphony-demo.mp4
Incompatible Technologies Successfully Combined:
- ๐ง Git - Version control system
- ๐ต Web Audio API - Real-time music generation
- ๐ Three.js - 3D graphics rendering
This project was built with extensive use of Kiro AI's advanced features:
- โ Vibe Coding - Rapid prototyping and iterative development
- โ Steering Documents - Custom guidelines for music theory, project structure, and git analysis
- โ Agent Hooks - Automated testing and code quality checks on file save
- โ Spec-Driven Development - Structured feature planning with requirements, design, and tasks
- โ Context Management - Efficient use of #File, #Folder, and #Codebase references
๐ See KIRO_USAGE.md for detailed documentation of Kiro integration.
- ๐ Repository: github.com/KHemanthRaju/gitsymphony
- ๐ Documentation: Quick Start Guide | Deployment Guide
- ๐ฌ Demo Video: screenshots/gitsymphony-demo.mp4
- QUICKSTART.md - Get started in 5 minutes
- KIRO_USAGE.md - How Kiro AI was used to build this project
- DEPLOYMENT.md - Deploy to Vercel and Railway
- screenshots/README.md - Media assets documentation
Contributions are welcome! Feel free to:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Kiro AI Team - For creating an amazing AI-powered development tool
- Kiroween 2025 - For hosting this creative hackathon
- Tone.js & Three.js Communities - For excellent documentation and examples
Built with โค๏ธ and Kiro AI for Kiroween 2025 ๐
MIT License - See LICENSE for details



