Tired of manually creating GitHub issues? The GitHub Issue Creator is a Python-based tool designed to automate this process, saving you valuable time and ensuring efficient task tracking. Whether you're managing a personal project or a large open-source repository, this tool is your go-to solution.
✨ Explore the App: Try Live Demo ✨ - Try it out now on Streamlit!
Note : If you are using the Streamlit App, Please provide your GitHub credentials in the sidebar and token with complete access.
✅ CSV Bulk Upload - Create 100+ issues in minutes
✅ CLI Interface - Perfect for CI/CD pipelines
✅ Template Support - Predefined issue structures
✅ GitHub API v3 - Secure integration
✅ Label Management - Comma-separated tags
✅ Open Source - MIT Licensed
- Setting up project structures 📁
- Writing unit tests 🧪
- Automating CI/CD pipelines ⚙️
- Managing API integrations 🌐
- Handling documentation tasks 📝
Ensure you have:
- Python 3.6+ → Download Python
- Git → Download Git
git clone https://github.com/DadaNanjesha/GitHub-issue-creator.git
cd GitHub-issue-creator
pip install -r requirements.txt
GitHub-issue-creator/ # Root directory
│
├── config/ # Configuration files
│ └── config.py # GitHub repository settings & authentication
│
├── issues/ # Predefined issue templates
│ ├── issues_list.py # List of issues to be created
│
├── tests/ # Unit tests
│ └── test_github_api.py # Test cases for GitHub API integration
│
├── utils/ # Utility scripts
│ └── github_api.py # GitHub API interaction functions
│
├── main_csv.py # Script for CSV-based API issue creation
├── main_list.py # Script for list-based API issue creation
├── .env # environment variables file
├── requirements.txt # List of dependencies
└── README.md # Project documentation
- Place file in root directory as shown below:
.env - Open
.envand add your GitHub repository details and personal access token:USERNAME=your_github_username REPO=your_repo_name TOKEN=your_github_token
Execute the following command to generate issues from a predefined list:
python main_list.py
The script reads predefined issues from issues/issues_list.py and creates them automatically.
Execute the following command to generate issues from a CSV file:
python main_csv.py
You can now create issues faster using a CSV file. Here’s the required structure for the CSV file:
| Column | Required | Description | Example |
|---|---|---|---|
| title | ✅ Yes | Issue title | Fix login page UI bug |
| body | ✅ Yes | Detailed description | Update button colors... |
| labels | ✅ Yes | Comma-separated tags | bug,ui,high-priority |
| assignee | ❌ No | GitHub username | DadaNanjesha |
- Create a file named
issues.csvin the root directory of the project. - Add your issues in the above format.
- Run the following command to create issues from the CSV file:
python main_csv.py
🎉 welcome contributions from the community! Follow these steps to contribute:
- Fork the Repository
- Create a Feature Branch (
git checkout -b feature-branch) - Commit Your Changes (
git commit -m "Added new feature") - Push to Your Branch (
git push origin feature-branch) - Open a Pull Request 🚀
💡 If you're planning major changes, open an issue first to discuss your proposal.
This project is licensed under the MIT License.
For any questions, issues, or feature requests, feel free to:
- Open an issue in this repository 🛠️
✅ Streamlit App Integration - Try the app directly via the new link!
✅ CSV File Integration – Added support for creating issues faster using a CSV file.
✅ Sponsorship Section – Encourages users to sponsor the project for further development.
✅ More engaging introduction – Makes the project sound exciting and valuable.
✅ Clearer structure & formatting – Uses emojis, sections, and highlights for better readability.
✅ More details on usage & contribution – Helps first-time users get started quickly.
✅ Better "Why Use This?" section – Explains the benefits concisely.
✅ Enhanced readability – Proper code blocks, file structures, and bold text for clarity.
- Customizing the UI.
- Optimization if required.
- Can include new features for better user experience.
If you find this project helpful, consider sponsoring it to support further development:
- Add new features 🚀
- Improve documentation 📚
- Fix bugs 🐛
- Maintain the project 🛠️