Skip to content

bijonguha/jira_backend

Repository files navigation

Jira Copilot Backend

Jira FStack Logo

tma_3_express.mp4

Overview

Jira Copilot Backend is a FastAPI web application designed to assist Agile teams in estimating Jira stories using the story's summary and description using OpenAI ChatGPT. Additionally, it provides functionality to create and update subtasks directly on the Jira board, streamlining project management and enhancing productivity.

🚀 Explore the App

🌐 Webapp Link: Click Here to Access the Jira Estimator (Contributed by Rishav)

📄 Swagger Documentation: Click Here for API Docs

Features

  • GenAI Story Estimation: Estimate the effort required for Jira stories based on the summary and description automatically fetched based on story-id.
  • Automated Subtask Creation in Jira board: Create subtasks in Jira for any given story ID.

Getting Started

Prerequisites

  • Python 3.10 or higher
  • A Jira account with API access & keys
  • A OpenAI API key

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/jira_fstack_app.git
    cd jira_fstack_app
  2. Create a virtual environment:

    python -m venv venv
    source venv/bin/activate   # On Windows use `venv\Scripts\activate`
  3. Install the required packages:

    pip install -r requirements.txt
  4. Set up environment variables:

    Create a .env file in the root of the project with the following content:

    OPENAI_API_KEY=your_openai_api_key_here

    Replace your_openai_api_key_here with your actual OpenAI API key.

Running the Application

To run the FastAPI application, execute the following command:

uvicorn main:app --reload

You can access the API documentation at http://localhost:8000/docs.

API Endpoints

  • Health Check

    • GET /health
    • Returns the health status of the application.
  • Estimate Story

    • POST /story_id
    • Request body should include the story information.
    • Requires headers: username, api_token, jira_url.
    • Additionally you can pass customised prompt overriding the existing prompt
  • Create Subtasks

    • POST /create_subtasks
    • Request body should include estimated story information.
    • Requires headers: username, api_token, jira_url.

Contributors

  • Bijon - Python & Backend
  • Rishav - Frontend
  • Jaiyesh - Python & Backend

Contributing

Contributions are welcome! Please feel free to submit a pull request or open an issue to discuss any improvements or features.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published