Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gabrielchua/repo-explainer
Chat with a repo by adding the entire repo to gemini 1.5 pro's 1M context window 🔥
https://github.com/gabrielchua/repo-explainer
gemini gemini-api llm streamlit
Last synced: 24 days ago
JSON representation
Chat with a repo by adding the entire repo to gemini 1.5 pro's 1M context window 🔥
- Host: GitHub
- URL: https://github.com/gabrielchua/repo-explainer
- Owner: gabrielchua
- License: mit
- Created: 2024-04-12T15:21:58.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-07-16T03:47:37.000Z (4 months ago)
- Last Synced: 2024-10-11T09:31:00.922Z (about 1 month ago)
- Topics: gemini, gemini-api, llm, streamlit
- Language: Python
- Homepage:
- Size: 1.69 MB
- Stars: 12
- Watchers: 2
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Repo Explainer 📦
[![Streamlit App](https://static.streamlit.io/badges/streamlit_badge_black_white.svg)](https://repo-explainer.streamlit.app/)
This Streamlit application leverages the power of Google's Generative AI and the Gemini-1.5-pro-latest model to provide insights and explanations about GitHub repositories. Simply input a GitHub URL, and the app will analyze the repository's structure and content, generating a comprehensive summary.
## Features
* **Repository Analysis:** Analyzes the directory structure, README, and relevant code files (Python, HTML, CSS, JavaScript, etc.).
* **AI-Powered Explanations:** Employs the Gemini-1.5-pro-latest model to provide clear and informative explanations about the repository's purpose, functionality, and code structure.
* **Interactive Chat Interface:** Engage in a conversation with the AI to ask specific questions and delve deeper into the repository's details.## Usage
1. **Clone the repository:** `git clone https://github.com/your-username/repo-explainer.git`
2. **Install dependencies:** `pip install -r requirements.txt`
3. **Set up API keys:**
* **Google API Key:** Obtain a Google API key with access to the Generative AI API and set it as the `GOOGLE_API_KEY` environment variable.
* **GitHub Token (Optional):** For private repositories or to avoid rate limiting, set your GitHub personal access token as the `GH_API_KEY` environment variable.
4. **Run the application:** `streamlit run app.py`
5. **Access the app:** Open the provided URL in your web browser.
6. **Enter a GitHub URL:** Input the URL of the repository you want to analyze.
7. **Explore the results:** Review the generated summary and use the chat interface to ask further questions.## Disclaimer
This project is for educational and experimental purposes. API usage may incur costs.
_PS: This README was written by Gemini 1.5 Pro, using this demo_