Thanks to visit codestin.com
Credit goes to Github.com

Skip to content
/ gitforme Public
forked from herin7/gitforme

AI-powered GitHub code explorer — understand any repo in minutes, not days.

License

Notifications You must be signed in to change notification settings

qte77/gitforme

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

136 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitForMe Logo

GitForMe

Understand any GitHub repository in minutes, not days.

Your AI-powered co-pilot for navigating, understanding, and contributing to open-source projects.


Live Demo

GitHub release Issues Stars


Jumping into a new, complex GitHub repository can feel like navigating an ocean without a map. That initial "where do I even start?" moment is a real blocker for developers who want to contribute to open-source.

GitForMe is an intelligent code exploration platform that solves this problem. Just paste a repository URL, and GitForMe generates a comprehensive, interactive dashboard that demystifies the codebase, helping you make your first contribution faster than ever.

✨ Key Features

  • 🤖 AI-Powered Chat (GitBro): Ask questions about the codebase in natural language. GitBro uses the repository's context to give you accurate, grounded answers.
  • 📊 Interactive Dashboard: Get a bird's-eye view of any repository with:
    • Code Hotspots: Instantly see the most active and complex files.
    • Dependency Analysis: Check for outdated packages and potential security risks.
    • Contribution Insights: Find "Good First Issues" and understand contributor activity.
  • 🧠 Super Context Builder: Select specific files, folders, or issues to create a focused context, then copy it to your favorite LLM (ChatGPT, Claude, Gemini) for deeper analysis.
  • 📂 Smart File Explorer: Navigate the repository structure with an intuitive file tree.
  • 🚀 One-Click Setup: Clone the repository and open it directly in VS Code with a single click.

🛠️ Tech Stack

React Vite Node.js Express.js Python Flask Tailwind CSS Framer Motion FAISS Azure

🏛️ How It Works: Architecture

GitForMe uses a microservice architecture to separate concerns and ensure scalability.

  1. Frontend: The user interacts with a responsive web app built with React, Vite, and Framer Motion.
  2. Backend: A Node.js/Express server handles user authentication, fetches repository data via the GitHub API, and coordinates with the LLM server.
  3. LLM Server: A Python/Flask server manages all AI-powered tasks. It creates vector embeddings of the code (sentence-transformers), stores them in a FAISS index for fast retrieval, and streams responses from the language model (e.g., Azure OpenAI).

📸 Screenshots

File Explorer

Landing Page

🎥 Watch How GitForMe Works

  • Get a quick walkthrough of the platform in under 5 minutes!

GitForMe Explainer Video

🚀 Get It Running Locally

Want to run GitForMe on your own machine? Here’s how.

Prerequisites

  • Node.js (v18+) and npm
  • Python (v3.8+) and pip
  • Git
  • An Azure OpenAI API Key (or you can adapt the code for another LLM provider)

Installation Guide

Click to view step-by-step installation instructions
  1. Clone the Repository

    git clone https://github.com/herin7/gitforme.git
    cd gitforme
  2. Setup the Backend Server

    cd server
    npm install

    Create a .env file and add your GitHub OAuth credentials:

    GITHUB_CLIENT_ID=your_client_id
    GITHUB_CLIENT_SECRET=your_client_secret

    Then, start the server:

    npm start
  3. Setup the LLM Server

    cd ../llm-server
    pip install -r requirements.txt

    Create a .env file and add your Azure OpenAI credentials:

    AZURE_OPENAI_KEY=your_key
    AZURE_OPENAI_ENDPOINT=your_endpoint
    AZURE_OPENAI_DEPLOYMENT=your_deployment_name

    Then, start the server:

    flask run
  4. Setup the Frontend

    cd ../gitforme
    npm install

    Create a .env.local file and add the URL of your backend server:

    VITE_API_URL=http://localhost:3001

    Then, start the development server:

    npm run dev

Your local GitForMe instance should now be running at http://localhost:5173!

💖 How to Contribute

We welcome contributions from the open-source community with open arms! If you're looking to help, here’s how you can get started.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Good First Issues

Looking for an easy way to start? Check out these areas:

  • Improve UI/UX: Enhance the styling of components or improve mobile responsiveness.
  • Add More File Parsers: Extend the summarize_code function in app.py to support more languages.
  • Enhance Error Handling: Improve error messages and user feedback across the application.
  • Write Tests: We always need more unit and integration tests!

📄 License

Distributed under the MIT License. See LICENSE.txt for more information.

📧 Contact

Herin - @herin7

Project Link: https://github.com/herin7/gitforme

About

AI-powered GitHub code explorer — understand any repo in minutes, not days.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 92.3%
  • Python 6.8%
  • Other 0.9%