Embark on a journey to uncover insights from your Jira comments.
JiraQuest is an open-source project designed to help teams process and analyze Jira comments efficiently. With built-in integrations for Tableau and Slack, along with a powerful CLI, JiraQuest empowers teams to focus on actionable insights, visualize trends, and stay connected.
- Introduction
- Features
- Installation
- Quick Start
- Setup
- Usage
- Example Files
- Example Output
- Contributing
- License
JiraQuest simplifies Jira comment analysis by automating the process of fetching, filtering, and formatting comments. It is highly customizable and suitable for various teams, including developers, Atlassian admins, quality assurance, project management, and more. Whether you want detailed reports, visual insights, or Slack updates, JiraQuest has you covered.
- Automated Comment Processing: Fetch and filter comments from Jira issues with ease.
- Customizable Exclusions: Exclude specific users or teams from reports.
- Tableau Integration: Export data to a SQLite database for powerful visualizations.
- Slack Integration: Send summarized reports directly to Slack channels.
- Sentiment Analysis (optional): Gain insights into the sentiment of comments.
- Flexible CLI: Run all operations from the command line.
JiraQuest is available on PyPI. You can install it using pip:
pip install jiraquest
Alternatively, you can clone the repository and install the dependencies manually:
git clone https://github.com/rainbowgore/JiraQuest.git
cd jiraquest
pip install -r requirements.txt
-
Install JiraQuest:
pip install jiraquest
-
Set up your
.env
file:JIRA_URL=https://your-jira-instance.atlassian.net [email protected] TOKEN=your-api-token
-
Run the CLI:
jiraquest --generate-report
-
Create a
.env
file in the root directory with the following environment variables:# Jira Configuration JIRA_URL=https://your-jira-instance.atlassian.net [email protected] TOKEN=your-api-token # File Paths INPUT_FILE=data/input_file.xlsx NEW_OUTPUT_JSON=data/formatted_last_3_comments.json REPORT_FILE=data/final_report.csv DB_FILE=data/jira_comments.db # Slack Integration SLACK_WEBHOOK_URL=https://hooks.slack.com/services/your/slack/webhook
-
Prepare your input Excel file (
input_file.xlsx
) with the following structure:Key Components PROJ-123 Frontend PROJ-124 Backend -
Add a file
excluded_users.txt
(optional) to define users to exclude from reports:John Doe Jane Smith
Run the script with the following commands:
-
Generate Reports:
jiraquest --generate-report
Output:
- JSON:
formatted_last_3_comments.json
- CSV:
final_report.csv
- JSON:
-
Save to Database:
jiraquest --save-to-database
Output:
- SQLite Database:
jira_comments.db
- SQLite Database:
-
Send Report to Slack:
jiraquest --slack-me
Example Slack message:
🔔 JiraQuest Alert 🚀 New Insights from Jira Comments: Issue Key: PROJ-123 Component: Frontend Latest Comment: "The feature is not working as expected." Author: John Doe Timestamp: 2025-01-10 12:34:56
-
Combine Actions:
jiraquest --generate-report --save-to-database --slack-me
After running the --save-to-database
command, connect Tableau to the SQLite database:
- Open Tableau.
- Connect to the database file (
jira_comments.db
). - Visualize the data using Tableau's drag-and-drop interface.
Ensure your Slack webhook URL is set in the .env
file. Run the following command to send reports:
jiraquest --slack-me
You'll find the following example files in the data
directory:
-
sample_input.xlsx
: A template for input data with example Jira issue keys and components. -
excluded_users.txt
: A template for excluded users.
[
{
"Instance": "https://your-jira-instance.atlassian.net",
"Issue Key": "PROJ-123",
"Component": "Frontend",
"Comment-1": "The feature is not working as expected.",
"Author-1": "John Doe",
"Email-1": "[email protected]",
"Created-1": "2025-01-10T12:34:56Z",
"Comment-2": "I have fixed the issue.",
"Author-2": "Jane Smith",
"Email-2": "[email protected]",
"Created-2": "2025-01-11T08:22:33Z",
"Comment-3": "The fix has been deployed.",
"Author-3": "John Doe",
"Email-3": "[email protected]",
"Created-3": "2025-01-12T09:45:12Z"
}
]
Contributions are welcome! Here’s how you can get involved:
- Fork the Repository: Click on the "Fork" button at the top-right corner of this page.
- Clone Your Fork:
git clone https://github.com/yourusername/jiraquest.git cd jiraquest
- Install Development Dependencies:
pip install -r requirements-dev.txt
- Make Changes: Add your feature or fix bugs.
- Run Tests:
pytest
- Submit a Pull Request: Push your changes and open a pull request.
For more details, check our Contributing Guidelines.
The project is available as open source under the terms of the MIT License.