Skip to content

taradepan/github-pr-analyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 GitHub PR Analyzer

A powerful tool for analyzing GitHub pull requests using AI-powered code analysis.

📝 Project Description

The GitHub PR Analyzer is a web application that utilizes AI-powered code analysis to evaluate pull requests on GitHub. It leverages the power of FastAPI, Django, and Celery to provide a scalable and efficient solution for analyzing code quality, detecting bugs, and suggesting improvements.

🌟 Key Features and Capabilities

  • Analyze GitHub pull requests using AI-powered code analysis
  • Detect bugs, security vulnerabilities, and performance issues
  • Provide suggestions for improvement and code optimization
  • Utilize Celery for task queue management and asynchronous processing
  • Support for GitHub API integration for fetching pull request data

🛠️ Technologies and Dependencies Used

  • FastAPI for building the frontend service
  • Django for building the backend service
  • Celery for task queue management and asynchronous processing
  • GitHub API for fetching pull request data
  • Groq for AI-powered code analysis

📚 Setup Instructions

  1. Clone the repository using git clone https://github.com/taradepan/github-pr-analyzer.git
  2. Create a .env file and add your Groq API key
  3. Install the required dependencies using pip install -r requirements.txt
  4. Run the FastAPI service using uvicorn main:app --reload
  5. Run the Django service using python manage.py runserver 0.0.0.0:8001
  6. Run the Celery worker using celery -A django_app worker -l info -P eventlet

📊 Usage Guide

  1. Send a POST request to http://127.0.0.1:8001/start_task/ with the following JSON data:
{
    "repo_url": "https://github.com/<username>/<reponame>",
    "pr_number": <pr-number>,
    "github_token": null
}
  1. Get the task status using http://127.0.0.1:8001/task_status/<task_id>/
  2. Get the task result using http://127.0.0.1:8001/task_result/<task_id>/

🤝 Contribution Guidelines

  • Fork the repository and create a new branch for your feature or bug fix
  • Write clear and concise commit messages
  • Use Markdown formatting for documentation and comments
  • Test your code thoroughly before submitting a pull request

📝 Additional Notes and Tips

  • Make sure to replace <username> and <reponame> with your actual GitHub repository credentials
  • Use a valid GitHub token for authentication
  • Be patient while the AI-powered code analysis is running, as it may take some time to complete

👍 Happy coding! 🚀


Generated by GH-Readme-Bot on 2025-02-02 10:45:04 UTC

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages