Skip to content

Repository files navigation

🩺 RepoDoctor

Analyze, score, and improve GitHub repositories using automated quality metrics.

Python FastAPI React TypeScript PostgreSQL Redis Docker


Overview

RepoDoctor is a full-stack repository quality analysis platform that evaluates GitHub repositories using a comprehensive set of software engineering metrics.

It automates repository assessment by analyzing project structure, documentation, maintainability, code quality indicators, licensing, testing, dependency health, and other engineering best practices.

The goal is to help developers quickly identify weaknesses and improve the overall quality of their repositories.


Features

Repository Analysis

  • Analyze any public GitHub repository
  • Automated repository scoring
  • Health status evaluation
  • Repository metadata extraction
  • Branch and commit statistics

Quality Assessment

  • Documentation analysis
  • README quality checks
  • License detection
  • Dependency inspection
  • Testing detection
  • CI/CD workflow detection
  • Project structure validation
  • Code organization analysis

Dashboard

  • Repository health overview
  • Quality score visualization
  • Rule-by-rule breakdown
  • Historical analysis
  • Interactive charts

Reports

  • Save analysis reports
  • Compare multiple reports
  • View repository history
  • Export reports
  • Trend analysis

User Experience

  • Modern responsive UI
  • Authentication
  • Scheduler support
  • Dark theme
  • Interactive visualizations

Tech Stack

Frontend

  • React
  • TypeScript
  • Vite
  • Tailwind CSS
  • shadcn/ui
  • Recharts
  • React Router

Backend

  • FastAPI
  • SQLAlchemy
  • PostgreSQL
  • Redis
  • Alembic

DevOps

  • Docker
  • Docker Compose
  • Nginx

Project Structure

RepoDoctor
│
├── backend/
│   ├── api/
│   ├── models/
│   ├── services/
│   ├── scheduler/
│   ├── database/
│   └── migrations/
│
├── frontend/
│   ├── src/
│   ├── components/
│   ├── pages/
│   ├── hooks/
│   └── services/
│
├── docker/
├── nginx/
└── README.md

Installation

Clone Repository

git clone https://github.com/Sankethhhhhhh/Repodoctor.git

cd RepoDoctor

Backend

cd backend

python -m venv .venv

source .venv/bin/activate

Windows

.venv\Scripts\activate

Install dependencies

pip install -r requirements.txt

Frontend

cd frontend

npm install

or

pnpm install

Environment Variables

Create a .env file inside the backend directory.

Example:

DATABASE_URL=
REDIS_URL=
GITHUB_TOKEN=

SECRET_KEY=
ALGORITHM=HS256
ACCESS_TOKEN_EXPIRE_MINUTES=30

Running Locally

Backend

uvicorn app.main:app --reload

Frontend

npm run dev

or

pnpm dev

Docker

docker compose up --build


Roadmap

  • AI-powered repository recommendations
  • Multi-repository benchmarking
  • GitHub App integration
  • PDF report generation
  • Team analytics
  • Repository monitoring
  • Custom scoring rules

Contributing

Contributions are welcome.

  1. Fork the repository
  2. Create a feature branch
git checkout -b feature/my-feature
  1. Commit your changes
git commit -m "feat: add new feature"
  1. Push
git push origin feature/my-feature
  1. Open a Pull Request

License

This project is licensed under the MIT License.


Author

Sanketh

Artificial Intelligence & Machine Learning Student

GitHub: https://github.com/Sankethhhhhhh


Support

If you found this project useful, consider giving it a ⭐ on GitHub.

About

Full-stack GitHub repository quality analysis platform built with FastAPI, React, TypeScript, PostgreSQL, Redis, and Docker.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages