Skip to content

DadaNanjesha/GitHub-bulk-issue-creator

Repository files navigation

πŸš€ GitHub Issue Creator

Python Version License: MIT Build Status Streamlit App GitHub Sponsors

πŸ“Œ Automate your GitHub Issue creation effortlessly!

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.


πŸš€ Features

βœ… 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

🌟 Ideal for:

  • Setting up project structures πŸ“
  • Writing unit tests πŸ§ͺ
  • Automating CI/CD pipelines βš™οΈ
  • Managing API integrations 🌐
  • Handling documentation tasks πŸ“

πŸ› οΈ Installation Guide

πŸ“Œ Prerequisites

Ensure you have:

πŸ“₯ Clone the Repository

git clone https://github.com/DadaNanjesha/GitHub-issue-creator.git
cd GitHub-issue-creator

πŸ“¦ Install Dependencies

pip install -r requirements.txt

πŸ“‚ Project Structure

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


πŸš€ Usage

1️⃣ Set Up Configuration

  1. Place file in root directory as shown below:
    .env
    
  2. Open .env and add your GitHub repository details and personal access token:
    USERNAME=your_github_username
    REPO=your_repo_name
    TOKEN=your_github_token
    

2️⃣ Run the Tool

Option 1: Create Issues from a List

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.

Option 2: Create Issues from a CSV

Execute the following command to generate issues from a CSV file:

python main_csv.py

πŸ“ CSV File Integration

You can now create issues faster using a CSV file. Here’s the required structure for the CSV file:

πŸ“ CSV Format Guide

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

How to Use the CSV File

  1. Create a file named issues.csv in the root directory of the project.
  2. Add your issues in the above format.
  3. Run the following command to create issues from the CSV file:
    python main_csv.py
    

🀝 Open-Source & Community-Friendly

πŸŽ‰ welcome contributions from the community! Follow these steps to contribute:

  1. Fork the Repository
  2. Create a Feature Branch (git checkout -b feature-branch)
  3. Commit Your Changes (git commit -m "Added new feature")
  4. Push to Your Branch (git push origin feature-branch)
  5. Open a Pull Request πŸš€

πŸ’‘ If you're planning major changes, open an issue first to discuss your proposal.


πŸ“œ License

This project is licensed under the MIT License.


πŸ“¬ Contact

For any questions, issues, or feature requests, feel free to:

  • Open an issue in this repository πŸ› οΈ

πŸ”₯ Key Improvements:

βœ… 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.


🎯 Further development in pipeline

  • 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 πŸ› οΈ

⭐ Star This Repository

If you find this project useful, please consider starring it and also you can πŸ’– Sponsor!

🎯 Happy Coding! πŸš€