Skip to content

darryllee/unthreaded

Repository files navigation

Comments Unthreaded - Jira Activity Tab

A hacky Jira Forge app that provides an enhanced, unthreaded view of issue comments with advanced filtering, search, and analytics capabilities.

Inspired by Brian Stinar's comment on JRACLOUD-93678 - Ability to configure Threaded Comments in Jira

Written by Rovo Dev CLI with Forge MCP Server

NOTE: This is the "Deluxe" version. You might want the Simple version if you don't need filtering, searching, and analytics.

Screenshot

Deluxe Comments Unthreaded

Features

Core Functionality

  • Unthreaded Comments View: Display all issue comments in a clean, chronological list without threading complexity
  • Smart Search: Search across comment content, author names, and rendered HTML content with highlighting
  • Advanced Filtering: Filter comments by author, date range, and search terms
  • Flexible Sorting: Toggle between chronological (oldest first) and reverse chronological (newest first) ordering

Analytics & Statistics

  • Comment Statistics: View total comments, word counts, and average words per comment
  • Author Analytics: See most active commenters and comment distribution
  • Real-time Filtering: All statistics update dynamically based on active filters

User Experience

  • Collapsible Panels: Expandable statistics and filter sections to reduce clutter
  • Search Highlighting: Search terms are highlighted in comment content
  • Formatted Content: Proper rendering of Atlassian Document Format (ADF) content
  • User Avatars: Display comment authors with proper user components
  • Error Handling: Graceful error states and loading indicators

Setup and Deployment

  1. Install dependencies:

    npm install
  2. Register the app:

    forge register 'Unthreaded Comments'
  3. Deploy the app:

    forge deploy
  4. Install the app to your Jira site:

    forge install

How It Works

This app adds a "Comments Unthreaded" tab to the Activity section of Jira issues. Unlike the default threaded comment view, this provides:

  • Linear Timeline: All comments displayed in a single, easy-to-scan list
  • Enhanced Search: Find specific comments or authors quickly
  • Content Analysis: Understand comment patterns and author participation
  • Better Navigation: No nested threads - just a clean chronological flow

Technical Architecture

Backend (src/index.js)

  • Resolver Functions: Two main resolvers for fetching comments and issue context
  • Jira API Integration: Uses Jira REST API v3 to fetch comment data with proper ordering
  • Error Handling: Comprehensive error handling with detailed error responses

Frontend (src/frontend/index.jsx)

  • React Components: Built with Forge UI Kit components for consistent Atlassian design
  • State Management: Complex state handling for filters, search, and UI controls
  • Performance Optimization: Uses React's useMemo for expensive filtering and calculations
  • ADF Processing: Custom functions to extract and format Atlassian Document Format content

File Structure

  • manifest.yml - Forge app configuration defining the jira:issueActivity module
  • src/index.js - Backend resolver functions for API calls
  • src/frontend/index.jsx - React frontend with comment display and filtering logic
  • package.json - Dependencies including Forge React, API, and Bridge packages

Permissions

The app requires:

  • read:jira-work - To access issue comments and metadata

Use Cases

  • Long Discussion Threads: Simplify navigation through extensive comment histories
  • Comment Analysis: Research team communication patterns and participation
  • Content Search: Quickly find specific information mentioned in comments
  • Timeline Review: Understand the chronological flow of issue discussions

About

Jira Comments without replies. Courtesy of Rovodev CLI + Forge MCP Server

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors