Skip to content

bmar1/gitmaster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitMaster

Deep GitHub Repository Analysis System

GitMaster is a web application that analyzes GitHub repositories and provides comprehensive insights into their structure, dependencies, and architecture.

Features

  • 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

Tech Stack

Backend

  • Node.js + Express
  • TypeScript
  • Octokit (GitHub API)

Frontend

  • React 18
  • TypeScript
  • Vite
  • TailwindCSS
  • TanStack Query

Project Structure

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

Getting Started

Prerequisites

  • Node.js 18+ installed
  • npm or yarn package manager

Installation

  1. Clone the repository:
git clone <repository-url>
cd gitmaster
  1. Install backend dependencies:
cd backend
npm i
  1. Install frontend dependencies:
cd ../frontend
npm install

Running Locally

  1. Start the backend server (from backend/ directory):
npm run dev

The API will run on http://localhost:3001

  1. In a new terminal, start the frontend (from frontend/ directory):
npm run dev

The app will run on http://localhost:5173

  1. Open your browser and navigate to http://localhost:5173

Usage

  1. Enter a GitHub repository URL (e.g., https://github.com/facebook/react)
  2. Click ANALYZE
  3. View the analysis results:
    • Overview: Repository metadata and summary
    • File Tree: Complete directory structure
    • Dependencies: All npm packages used

API Endpoint

POST /api/analyze

Analyzes a GitHub repository.

Request:

{
  "url": "https://github.com/owner/repo"
}

Response:

{
  "success": true,
  "data": {
    "repository": { ... },
    "fileTree": [ ... ],
    "dependencies": { ... },
    "summary": "...",
    "analyzedAt": "2026-02-24T..."
  }
}

Deployment

Vercel Deployment

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_URL to point to backend URL

Limitations (MVP)

  • 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

Future Enhancements

  • 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

Documentation

Comprehensive documentation is available in the docs/ folder:

License

MIT

Contributing

Contributions are welcome! Please feel free to submit issues and pull requests.

Thanks

Thanks to Cursor (Opus 4.6) The GOAT.

About

A project that breaks down a repo intelligently, giving you insights into dependencies, user flows and more!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors