# GitVizz
Understand Any Codebase in Minutes, Not Hours
AI-powered repository analysis that turns complex codebases into interactive documentation, dependency graphs, and intelligent conversations.
Live Demo | Documentation | Report Bug | Request Feature
GitVizz revolutionizes how developers understand and navigate codebases. Whether you're onboarding to a new project, reviewing code, or exploring open source repositories, GitVizz transforms complex code structures into intuitive, interactive experiences.
https://github.com/user-attachments/assets/52eeb2c1-598b-4173-b0e8-8d4b986dbf64
### Graph Search
**Interactive dependency graphs with intelligent search capabilities**
|
### Graph Dependency View
**Visual code navigation with smart highlighting and dependency connections**
|
### Chat with Repository
**AI-powered conversations about your codebase with context-aware responses**
|
### Code Viewer
**Advanced code visualization with syntax highlighting and navigation**
|
### LLM Context Builder
**Build comprehensive context for Large Language Models automatically**
|
### Documentation Generator
**Automatically generate comprehensive documentation from your repository**
|
Visit gitvizz.com and paste any GitHub repository URL to get started instantly!
# Clone the repository
git clone https://github.com/adithya-s-k/gitvizz.git
cd gitvizz
# Copy environment files
cp backend/.env.example backend/.env
cp frontend/.env.example frontend/.env.local
# Start all services
docker-compose up --build
Access Points:
📊 Phoenix Observability: GitVizz includes Arize Phoenix for comprehensive LLM monitoring and tracing. See Phoenix Setup Guide for detailed configuration options.
Click to expand manual setup instructions
# Create virtual environment
python3 -m venv .venv
source .venv/bin/activate
# Install dependencies
pip install -r backend/requirements.txt
# Configure environment
cp backend/.env.example backend/.env
# Edit backend/.env with your settings
# Start backend server
uvicorn backend.server:app --host 0.0.0.0 --port 8003 --reload
# Install dependencies
cd frontend
pnpm install
# Configure environment
cp .env.example .env.local
# Edit .env.local with your settings
# Start development server
pnpm dev
GitVizz is built with modern, scalable technologies:
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Frontend │ │ Backend │ │ AI Services │
│ │ │ │ │ │
│ • Next.js 14 │◄──►│ • FastAPI │◄──►│ • OpenAI │
│ • TypeScript │ │ • Python 3.9+ │ │ • Anthropic │
│ • Tailwind CSS │ │ • Async/Await │ │ • Local LLMs │
│ • ShadCN UI │ │ • Pydantic │ │ │
└─────────────────┘ └─────────────────┘ └─────────────────┘
Frontend:
Backend:
Backend (.env)
# GitHub Integration
GITHUB_USER_AGENT=gitvizz-cognitivelab
# JWT Authentication
JWT_SECRET=your-jwt-secret-here-use-openssl-rand-base64-32
JWT_ALGORITHM=HS256
JWT_EXPIRE_MINUTES=10080 # 7 days
REFRESH_TOKEN_EXPIRE_DAYS=30 # 30 days
# Database Configuration
MONGO_URI=mongodb://localhost:27017
MONGODB_DB_NAME=gitvizz
# Server Configuration
HOST=0.0.0.0
PORT=8003
# File Storage
FILE_STORAGE_BASEPATH="storage"
# Data Encryption
ENCRYPTION_KEY=your-32-byte-base64-encryption-key-here
FERNET_KEY=your-32-byte-base64-encryption-key-here
# GitHub OAuth App Credentials
GITHUB_CLIENT_ID=your-github-oauth-client-id
GITHUB_CLIENT_SECRET=your-github-oauth-client-secret
# GitHub App Credentials (if using GitHub App instead of OAuth)
GITHUB_APP_ID=your-github-app-id
GITHUB_PRIVATE_KEY="-----BEGIN RSA PRIVATE KEY-----
your-github-app-private-key-here
-----END RSA PRIVATE KEY-----"
# Phoenix Observability (Optional)
PHOENIX_API_KEY=your-phoenix-api-key
PHOENIX_COLLECTOR_ENDPOINT=https://app.phoenix.arize.com
# LLM API Keys (at least one required)
OPENAI_API_KEY=your-openai-api-key-here
ANTHROPIC_API_KEY=your-anthropic-api-key-here
GEMINI_API_KEY=your-gemini-api-key-here
GROQ_API_KEY=your-groq-api-key-here
Frontend (.env.local)
# API base URL for the frontend application
NEXT_PUBLIC_BACKEND_URL=http://localhost:8003
# NextAuth Configuration
NEXTAUTH_URL=http://localhost:3000
AUTH_SECRET="your-auth-secret-here"
# GitHub App Integration
NEXT_PUBLIC_GITHUB_APP_NAME=your-github-app-name
AUTH_GITHUB_ID=your-github-app-client-id
AUTH_GITHUB_SECRET=your-github-app-client-secret
Step-by-step guide to create a GitHub Personal Access Token
Important: Copy and save the token immediately - you won't be able to see it again!
For detailed instructions with screenshots, see docs/github_personal_token.md
Step-by-step guide to create a GitHub App
App Details:
GitHub App name: Enter your application name
http://localhost:3000/http://localhost:3000/api/auth/callback/githubhttp://localhost:3000/Webhook: Deselect "Active" to disable webhooks
Set Permissions:
Repository Permissions → Contents: Read-only
Account Permissions → Email addresses: Read-only
Create App: Click "Create GitHub App"
.pem file.env fileFor detailed instructions with screenshots, see docs/create_github_app.md
We love contributions! GitVizz is open source and community-driven.
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)We follow Conventional Commits:
feat: New featuresfix: Bug fixesdocs: Documentation changesstyle: Code style changesrefactor: Code refactoringtest: Adding testschore: Maintenance tasksgitvizz/
├── frontend/ # Next.js frontend application
│ ├── app/ # App router pages
│ ├── components/ # Reusable UI components
│ ├── api-client/ # Generated API client
│ └── public/ # Static assets
├── backend/ # FastAPI backend application
│ ├── controllers/ # API route handlers
│ ├── documentation_generator/ # AI-powered analysis
│ ├── models/ # Data models
│ ├── routes/ # API routes
│ ├── schemas/ # Request/response schemas
│ ├── services/ # Business logic
│ └── utils/ # Utility functions
├── gitvizz/ # 📦 GitVizz Core Library
│ ├── gitvizz/ # Python package
│ │ ├── graph_generator.py # Main graph generation engine
│ │ ├── custom_ast_parser.py # AST parsing with Tree-sitter
│ │ └── modal_app.py # Optional Modal integration
│ ├── pyproject.toml # Package configuration
│ └── README.md # Library documentation
├── docs/ # Documentation
├── docker-compose.yaml # Container orchestration
└── README.md # You are here!
GitVizz includes a standalone Python library (gitvizz/) that provides the core code analysis and dependency graph generation functionality. This library can be used independently in your own projects:
```bash
pip install git+https://github.com/adithya-s-k/GitVizz.git#subdirectory=gitvizz
fr
$ claude mcp add GitVizz \
-- python -m otcore.mcp_server <graph>