An AI-powered tool that analyzes GitHub repositories and determines their alignment with the United Nations Sustainable Development Goals (SDGs). The application provides confidence scores for each of the 17 SDGs and can automatically create pull requests with the analysis results.
Please join our bi-weekly zoom call if you are interested in contributing to this project. Details can be found here: https://teamup.com/event/show/id/roRw4g34gHBc6rc6JgjGYxVHFdCAki/add-to-calendar
David Lippert and Ruth Ikegah are co-chairs of the CHAOSS UN SDG working group. David is the lead maintainer on this UNSDG-classifier-tool and he is new to maintaining open source software, so please be patient. In addition, Sunil Shah was the lead developer on this project and he is no longer being paid to work on this effort, so the amount of time he will be able to support our work is unclear. Nevertheless, we are very excited about what we can accomplish together and our community includes exceptional people from around the globe including members of the United Nations, so we are very happy for you to join us.
Our project is officially listed in the Code4GoodTech Dedicated Mentoring Program for this summer 2026. Please follow their process to apply for the single intern position.
- π Repository Analysis: Analyzes GitHub repositories using AI to determine SDG alignment
- π Confidence Scoring: Provides confidence levels (High/Medium/Low) for each SDG match
- βοΈ Interactive Editing: Edit and modify SDG predictions through an intuitive modal interface
- β Add/Remove SDGs: Dynamically add or remove SDG predictions
- π Download the SDGs: Download the SDG and upload it in your repository
- π» Modern UI: Clean, responsive React.js interface with real-time loading states
- Frontend: Next.js 14+ with TypeScript, Tailwind CSS, and React Icons
- Backend: Flask API with Aurora SDG API classifier
- Integration: GitHub API for pulling repository information
- Node.js 18+ and npm (Download link: https://nodejs.org/en/download/)
- Python 3.8+ (Download link: https://www.python.org/downloads/)
git clone <repository-url>
cd UNSDG-advocate- Make sure you have all of your prerequisites installed in your local computer like Node.js and Python
- Make sure you are inside the folder.
chmod +x ./bash.sh
./bash.shcd backend
python3 -m venv myvenv
source ./myvenv/bin/activate
pip install -r requirements.txt
python3 app.pycd frontend
npm install
npm run dev- Frontend: http://localhost:3000
- Backend API: http://127.0.0.1:5000
- Enter GitHub URL: Input any public GitHub repository URL
- Analyze: Click "Let's find out" to start AI analysis
- Review Results: View SDG predictions with confidence levels
- Edit (Optional): Use "Maybe, we need some edits" to modify predictions
- Create PR: Click "Yes, Download SDG Analysis File" to create a pull request with results
The tool generates a unsdg.json file containing:
{
"sdg_analysis": {
"analyzed_at": "2025-01-11T10:30:00.000Z",
"repository": "https://github.com/user/repo",
"predictions": {
"SDG 1": 0.85,
"SDG 3": 0.72,
"SDG 4": 0.91
}
}
}Analyzes a GitHub repository and its description for SDG alignment using Aurora SDG API.
Request:
- Project Name, Project Description and Github Url
Response:
{
"projectName": "XYZ",
"projectUrl": "https://github.com/user/repo",
"predictions": [
{
"prediction": 0.117522962,
"sdg": {
"@type": "sdg",
"id": "http://metadata.un.org/sdg/4",
"label": "Goal 4",
"code": "4",
"name": "Quality Education",
"type": "Goal",
"icon": "https://aurora-sdg-classifier.uni-due.de/resources/sdg_icon_4.png"
}
}
]
}- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
See LICENSE file for details.
For issues and questions:
- Check existing issues in the repository
- Create a new issue with detailed description
- Include logs and error messages when applicable
A responsive website for categorizing the open source projects into different UN SDG's goals that closely align with their repository by reading their directory.