Code Feedback Agent is an interactive web application that analyzes your Python projects on GitHub and provides AI-powered feedback. You can receive detailed analysis of your project and chat with the bot to improve your code.
- 📊 Comprehensive code analysis
- 💬 Interactive chat interface
- 📝 Markdown formatted outputs
- 🔄 Chat history tracking
- 🐍 Python and Jupyter Notebook support
- 🔒 Secure and scalable architecture
- Backend: Flask
- AI: OpenAI GPT-4 & Gemini Pro
- Database: SQLite
- Frontend: HTML, CSS (Tailwind), JavaScript
- Python 3.10+
- OpenAI & Gemini API key
- Git & pip
- Clone the repository:
git clone https://github.com/enesmanan/feedback-agent.git
cd feedback-agent
- Create a virtual environment:
python -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
- Install requirements:
pip install -r requirements.txt
- Set
.env
file:
OPENAI_API_KEY="api-key-here"
GEMINI_API_KEY="api-key-here"
DEFAULT_AI_SERVICE=auto
- Run the application:
python3 app.py # Linux
python app.py # Windows
- Go to
http://localhost:5000
in your browser - Enter your GitHub project URL
- Review the analysis results
- Chat with the bot to improve your project
feedback_agent/
├── templates/ # HTML templates
│ ├── base.html
│ └── chat.html
├── static/ # Static files
│ ├── css/
│ │ └── style.css
│ └── js/
│ └── main.js
├── database/ # Database operations
│ └── chat_history.py
├── utils/ # Utility functions
│ ├── github_handler.py
│ └── notebook_handler.py
├── analyzers/ # Code analysis
│ └── code_analyzer.py
├── formatters/ # Output formatting
│ └── output_formatter.py
├── config/ # Configuration
│ └── settings.py
├── app.py # Main application
├── requirements.txt # Dependencies
└── README.md # Documentation
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Enes Fehmi Manan - @enesfehmimanan