Deep GitHub Repository Analysis System
GitMaster is a web application that analyzes GitHub repositories and provides comprehensive insights into their structure, dependencies, and architecture.
- Repository Analysis: Fetch and analyze any public GitHub repository
- File Tree Visualization: Interactive hierarchical file structure
- Dependency Extraction: View all dependencies and devDependencies
- Repository Insights: Stars, forks, language, and metadata
- Clean UI: Terminal-inspired design with modern aesthetics
- Node.js + Express
- TypeScript
- Octokit (GitHub API)
- React 18
- TypeScript
- Vite
- TailwindCSS
- TanStack Query
gitmaster/
├── backend/ # Express API server
│ ├── src/
│ │ ├── routes/ # API routes
│ │ ├── services/ # Business logic
│ │ ├── types/ # TypeScript types
│ │ └── utils/ # Helper functions
│ └── package.json
├── frontend/ # React application
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── services/ # API client
│ │ └── types/ # TypeScript types
│ └── package.json
└── docs/ # Project documentation
- Node.js 18+ installed
- npm or yarn package manager
- Clone the repository:
git clone <repository-url>
cd gitmaster- Install backend dependencies:
cd backend
npm i- Install frontend dependencies:
cd ../frontend
npm install- Start the backend server (from
backend/directory):
npm run devThe API will run on http://localhost:3001
- In a new terminal, start the frontend (from
frontend/directory):
npm run devThe app will run on http://localhost:5173
- Open your browser and navigate to
http://localhost:5173
- Enter a GitHub repository URL (e.g.,
https://github.com/facebook/react) - Click ANALYZE
- View the analysis results:
- Overview: Repository metadata and summary
- File Tree: Complete directory structure
- Dependencies: All npm packages used
Analyzes a GitHub repository.
Request:
{
"url": "https://github.com/owner/repo"
}Response:
{
"success": true,
"data": {
"repository": { ... },
"fileTree": [ ... ],
"dependencies": { ... },
"summary": "...",
"analyzedAt": "2026-02-24T..."
}
}The project is configured to work on Vercel out of the box.
Backend:
- Deploy as a serverless function
- Set environment variables in Vercel dashboard
Frontend:
- Automatic deployment from Git
- Update
VITE_API_URLto point to backend URL
- Only supports public repositories (no authentication)
- Only extracts npm dependencies (package.json)
- GitHub API rate limit: 60 requests/hour (unauthenticated)
- No caching or persistent storage
- Support for private repositories with GitHub tokens
- Multi-language dependency support (Python, Rust, Go, Java)
- Dependency graph visualization
- Code complexity metrics
- Architecture pattern detection
- API endpoint extraction
- Caching layer for faster repeated analyses
Comprehensive documentation is available in the docs/ folder:
- Requirements - Functional and technical requirements
- Architecture - System design and diagrams
- API Specification - Complete API reference
- Tech Stack - Technology choices and rationale
MIT
Contributions are welcome! Please feel free to submit issues and pull requests.
Thanks to Cursor (Opus 4.6) The GOAT.
