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
.env
and 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.csv
in 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 π οΈ