PHPackages                             zynqa/filament-jira-feedback - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. zynqa/filament-jira-feedback

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

zynqa/filament-jira-feedback
============================

A FilamentPHP package to collect user feedback and automatically create Jira issues

1.1.3(2mo ago)072↓100%MITPHP

Since Oct 12Pushed 2mo agoCompare

[ Source](https://github.com/zynqa/filament-jira-feedback)[ Packagist](https://packagist.org/packages/zynqa/filament-jira-feedback)[ RSS](/packages/zynqa-filament-jira-feedback/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (6)Dependencies (3)Versions (8)Used By (0)

Filament Jira Feedback
======================

[](#filament-jira-feedback)

A FilamentPHP package to collect user feedback and automatically create Jira issues. Perfect for beta testing, feature requests, bug reports, and general user feedback.

Features
--------

[](#features)

- **Zero Configuration**: Automatically displays feedback banner at the top of all Filament pages
- **Filament Native**: Built with Filament components, forms, modals, and notifications
- **Dark Mode Support**: Automatically adapts to your Filament theme
- **Dynamic Issue Types**: Fetches issue types from your Jira project with filtering and custom descriptions
- **Flexible Positioning**: Position banner anywhere using Filament render hooks
- **User Context**: Includes authenticated user information with feedback
- **Fully Customizable**: Colors, icons, messages, and positioning

Requirements
------------

[](#requirements)

- PHP 8.2+
- Laravel (compatible with Laravel 11+)
- FilamentPHP (see `composer.json` for version compatibility)
- Jira Cloud account with API access

Installation
------------

[](#installation)

```
composer require zynqa/filament-jira-feedback
```

### Publish Configuration

[](#publish-configuration)

```
php artisan vendor:publish --tag=filament-jira-feedback-config
```

### Configure Environment Variables

[](#configure-environment-variables)

Add to your `.env` file:

```
# Required
FILAMENT_JIRA_FEEDBACK_URL=https://your-domain.atlassian.net
FILAMENT_JIRA_FEEDBACK_EMAIL=your-email@domain.com
FILAMENT_JIRA_FEEDBACK_API_TOKEN=your-jira-api-token
FILAMENT_JIRA_FEEDBACK_PROJECT_KEY=FEEDBACK

# Optional
FILAMENT_JIRA_FEEDBACK_ENABLED=true
FILAMENT_JIRA_FEEDBACK_BANNER_MESSAGE="Help us improve by reporting issues"
FILAMENT_JIRA_FEEDBACK_BUTTON_LABEL="Submit Feedback"
FILAMENT_JIRA_FEEDBACK_COLOR=info
FILAMENT_JIRA_FEEDBACK_ICON=heroicon-o-information-circle
FILAMENT_JIRA_FEEDBACK_REQUIRE_AUTH=false
FILAMENT_JIRA_FEEDBACK_DEFAULT_PRIORITY=Medium
```

### Get Your Jira API Token

[](#get-your-jira-api-token)

1. Log in to your Atlassian account
2. Go to
3. Click "Create API token"
4. Copy the token and add it to your `.env` file

That's it! The feedback banner will automatically appear at the top of your Filament pages.

Usage
-----

[](#usage)

### Basic Usage

[](#basic-usage)

Users can click the "Submit Feedback" button to open a modal with a form. The form includes:

- Issue type dropdown (dynamically fetched from Jira)
- Title field
- Description field

Upon submission, a Jira issue is automatically created with user context.

### Using the Action Component

[](#using-the-action-component)

Use the feedback action in any Filament resource, page, or widget:

```
use Zynqa\FilamentJiraFeedback\Actions\SubmitFeedbackAction;

protected function getHeaderActions(): array
{
    return [
        SubmitFeedbackAction::make(),
    ];
}
```

Customization
-------------

[](#customization)

### Banner Position

[](#banner-position)

By default, the banner appears at the top of the page. To customize:

1. Disable auto-registration in `.env`:

```
FILAMENT_JIRA_FEEDBACK_ENABLED=false
```

2. Register at custom position in your Panel Provider:

```
use Filament\View\PanelsRenderHook;
use Illuminate\Support\Facades\Blade;

->renderHook(
    PanelsRenderHook::CONTENT_START, // or any other hook
    fn (): string => Blade::render('@livewire(\'filament-jira-feedback-banner-widget\')')
)
```

**Available hooks:** `BODY_START`, `BODY_END`, `CONTENT_START`, `CONTENT_END`, `TOPBAR_START`, `TOPBAR_END`, `SIDEBAR_NAV_START`, `SIDEBAR_NAV_END`, `FOOTER`

### Colors

[](#colors)

Use preset colors:

```
FILAMENT_JIRA_FEEDBACK_COLOR=info # danger, warning, success, info, primary, secondary, gray
```

Or define custom Tailwind classes for light and dark modes:

```
# Light Mode
FILAMENT_JIRA_FEEDBACK_BG=bg-blue-50
FILAMENT_JIRA_FEEDBACK_TEXT=text-blue-900
FILAMENT_JIRA_FEEDBACK_BORDER=border-blue-600
FILAMENT_JIRA_FEEDBACK_ICON_COLOR=text-blue-600

# Dark Mode
FILAMENT_JIRA_FEEDBACK_BG_DARK=bg-blue-950/50
FILAMENT_JIRA_FEEDBACK_TEXT_DARK=text-blue-100
FILAMENT_JIRA_FEEDBACK_BORDER_DARK=border-blue-400
FILAMENT_JIRA_FEEDBACK_ICON_COLOR_DARK=text-blue-400
```

### Icons

[](#icons)

Use any Heroicon:

```
FILAMENT_JIRA_FEEDBACK_ICON=heroicon-o-bug-ant
```

### Issue Types

[](#issue-types)

Issue types are automatically fetched from Jira and cached for 1 hour.

**Filter with whitelist:**

```
// config/filament-jira-feedback.php
'issue' => [
    'allowed_types' => ['Bug', 'Story', 'Task'],
],
```

**Filter with blacklist:**

```
'issue' => [
    'allowed_types' => null,
    'excluded_types' => ['Epic', 'Sub-task'],
],
```

**Add descriptions:**

```
'issue' => [
    'type_descriptions' => [
        'Bug' => 'Report a software defect or error',
        'Task' => 'Request a general task or work item',
        'Story' => 'Request a new feature or enhancement',
    ],
],
```

Descriptions display as: `"Bug - Report a software defect or error"`

### Conditional Display

[](#conditional-display)

Show banner only to specific users:

```
->renderHook(
    PanelsRenderHook::BODY_START,
    fn (): string => auth()->user()?->hasRole('beta-tester')
        ? Blade::render('@livewire(\'filament-jira-feedback-banner-widget\')')
        : ''
)
```

### User Context

[](#user-context)

Include user's project key in issue summary:

```
'user_context' => [
    'include_project_key' => true,
    'project_key_field' => 'project_key',
],
```

This prefixes summaries with `[PROJECT_KEY]`.

Troubleshooting
---------------

[](#troubleshooting)

**Banner doesn't appear:**

- Check `FILAMENT_JIRA_FEEDBACK_ENABLED=true` in `.env`
- Clear cache: `php artisan config:clear && php artisan filament:cache-components`

**Feedback submission fails:**

- Verify Jira credentials are correct
- Check that the project key exists
- Ensure your Jira user has create issue permissions
- Check `storage/logs/laravel.log` for detailed errors

**Issue types not working:**

- Issue types are cached for 1 hour - clear cache: `php artisan cache:clear`
- Verify issue types exist in your Jira project
- Issue type names are case-sensitive

Contributing
------------

[](#contributing)

Contributions are welcome! Please feel free to submit a Pull Request.

License
-------

[](#license)

This package is open-sourced software licensed under the [MIT license](LICENSE.md).

###  Health Score

37

—

LowBetter than 83% of packages

Maintenance85

Actively maintained with recent releases

Popularity11

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~27 days

Recently: every ~34 days

Total

6

Last Release

75d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/a5497675053697d2042af1954b8b8e85250138abd494d3b344bf1c5b4217e8dd?d=identicon)[diazwatson](/maintainers/diazwatson)

---

Top Contributors

[![diazwatson](https://avatars.githubusercontent.com/u/1080386?v=4)](https://github.com/diazwatson "diazwatson (21 commits)")

---

Tags

laraveljirawidgetfeedbackfilamentfilamentphpBetabug-reporting

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/zynqa-filament-jira-feedback/health.svg)

```
[![Health](https://phpackages.com/badges/zynqa-filament-jira-feedback/health.svg)](https://phpackages.com/packages/zynqa-filament-jira-feedback)
```

###  Alternatives

[dotswan/filament-map-picker

Easily pick and retrieve geo-coordinates using a map-based interface in your Filament applications.

124139.3k2](/packages/dotswan-filament-map-picker)[jibaymcs/filament-tour

Bring the power of DriverJs to your Filament panels and start a tour !

12247.8k](/packages/jibaymcs-filament-tour)[tomatophp/filament-icons

Picker &amp; Table Column &amp; Icons Provider for FilamentPHP

3598.2k13](/packages/tomatophp-filament-icons)[defstudio/filament-searchable-input

A searchable autocomplete input for Filament forms

3212.4k](/packages/defstudio-filament-searchable-input)[asosick/filament-layout-manager

Allow users to create &amp; customize their own FilamentPHP pages composed of Livewire components

5718.8k2](/packages/asosick-filament-layout-manager)[agencetwogether/hookshelper

Simple plugin to toggle display hooks available in current page.

2312.7k](/packages/agencetwogether-hookshelper)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
