이 프로젝트는 다음 오픈소스 프로젝트의 데이터를 참고하였습니다:
상기 프로젝트는 MIT 라이선스를 따릅니다.
Open source projects thrive on public collaboration. By opening up source code and inviting developers from around the world to contribute, we create better software and foster a healthy, sustainable developer culture. For individual developers, contributing to open source provides valuable opportunities to learn, communicate, and grow.
However, many developers hesitate to contribute because:
they don’t know how to start,
they don’t know which issue to contribute to, or
they’re intimidated by the process.
This project, Open Source Contributing Assistant, aims to solve these problems and help activate the open source community.
Many developers are interested in contributing to GitHub open source projects. However, they often:
struggle to identify which issues they can contribute to, and
find it hard to understand contribution guides, which are usually written in English.
Even tools like GitHub Copilot or ChatGPT frequently fail to answer project-specific questions or give proper guidance when asked about contributing (see screenshots above 👆).
Open Source Contributing Assistant is a chatbot-based tool that helps users discover suitable open source issues and guides them through contributing.
Example queries:
🤔 “Recommend some beginner-friendly open source issues.” 🤔 “Show me JavaScript-based issues I can contribute to.” 🤔 “What are the coding conventions for this project?” 🤔 “I want to help with documentation. Any good issues?”
👩💻 For Contributors:
📌 “I don’t know which issue to work on” → Get tailored issue recommendations.
📌 “Contribution guides are confusing” → Get summaries and chatbot help.
🏨 For Open Source Maintainers:
📌 “We organized our issues, but new contributors aren’t joining”→ Boost project exposure and lower entry barriers with guided onboarding.
🤖 ChatBot
Recommends open source issues based on:
Programming language
Tags (e.g., documentation, bug, good first issue)
Difficulty level
Summarizes the repository (via README.md)
Explains issue goals in simple terms
Supports general and project-specific Q&A
Checks community health files (e.g., CODE_OF_CONDUCT.md) via sidebar
Project overview summarization
Contribution guide summary (contributing.md)
Readme summary (readme.md)
Uses LLM to simplify complex documentation
- Vector Database
Datasets:
Good First Issues
Awesome for Beginners
These datasets are JSON-formatted and updated regularly. Licensed under MIT, they are free to use with attribution.
Using: ChromaDB
Stores both vector and metadata
Allows metadata-based filtering
Lightweight and efficient for small-scale queries
- GitHub REST API
Collects repository and issue data using the GitHub Search API
- Filtering Criteria
Uses standardized GitHub issue tags:
good first issue → beginner-friendly
docs → documentation-related
- LangGraph
Enables modular, reusable, and traceable flow control
Supports branching logic and state-based logging