Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
# /workspaces/dynatrace
# /workspaces/dynatrace-dql
/workspaces/env-viewer @redhat-developer/rhdh-ui @christoph-jerolimov
/workspaces/entity-feedback @durandom
/workspaces/extensions @redhat-developer/rhdh-ui @redhat-developer/rhdh-plugins
# /workspaces/github-actions
/workspaces/github-issues @redhat-developer/rhdh-ui @divyanshiGupta
Expand Down
1 change: 1 addition & 0 deletions catalog-entities/extensions/plugins/all.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ spec:
- ./datadog.yaml
- ./dynatrace-commercial.yaml
- ./dynatrace-community.yaml
- ./entity-feedback.yaml
- ./extensions.yaml
- ./gerrit-scaffolder-actions.yaml
- ./github-actions.yaml
Expand Down
119 changes: 119 additions & 0 deletions catalog-entities/extensions/plugins/entity-feedback.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/redhat-developer/rhdh-plugins/refs/heads/main/workspaces/extensions/json-schema/plugins.json
apiVersion: extensions.backstage.io/v1alpha1
kind: Plugin
metadata:
name: entity-feedback
namespace: community
title: Entity Feedback
annotations:
extensions.backstage.io/pre-installed: 'true'
description: |
Collect and view user feedback on catalog entities with like/dislike or star ratings.
Provides rating buttons, aggregated views, and feedback collection for entity owners.
tags:
- feedback
- ratings
- collaboration
- user-experience
links:
- url: https://github.com/backstage/community-plugins/tree/main/workspaces/entity-feedback
title: Homepage
- url: https://github.com/backstage/community-plugins/issues
title: Bugs
- title: Source Code
url: https://github.com/backstage/community-plugins/tree/main/workspaces/entity-feedback/plugins
- title: Documentation
url: https://github.com/backstage/community-plugins/blob/main/workspaces/entity-feedback/plugins/entity-feedback/README.md
spec:
authors:
- name: Backstage Community
url: https://backstage.io/

publisher: Backstage Community
support:
provider: Community
level: community
lifecycle: active

categories:
- Collaboration

highlights:
- Like/Dislike or Star-based rating systems
- Collect detailed feedback on poorly-rated entities
- Aggregated rating views for entity owners
- Customizable response categories
- Rating breakdown analytics

description: |
The Entity Feedback plugin enables users to rate and provide feedback on catalog entities
within Backstage. It helps teams understand how useful and accurate their catalog entries
are by collecting structured user feedback.

## Key Features

* **Flexible Rating Systems**: Choose between like/dislike toggles or 5-star ratings
* **Feedback Collection**: Automatically prompt for detailed feedback on poor ratings
* **Owner Dashboards**: Aggregated views showing ratings for owned entities
* **Customizable Prompts**: Configure response categories and dialog text
* **Rating Analytics**: View rating breakdowns and trends

## Adding The Plugin To Red Hat Developer Hub

This plugin consists of both frontend and backend components that work together.

See the [Red Hat Developer Hub documentation](https://docs.redhat.com/en/documentation/red_hat_developer_hub)
for further instructions on how to add, enable, configure, and remove plugins in your instance.

## Configuring The Plugin

### Rating Variant

Configure the rating style in `app-config.yaml`:

```yaml
entityFeedback:
ratings:
- variant: starred # or 'like-dislike' (default)
```

### Feedback Collection

Customize feedback prompts:

```yaml
entityFeedback:
ratings:
- requireResponse: true
dialogTitle: "Help us improve"
dialogResponses:
- Incorrect information
- Missing details
- Outdated content
- Other
```

### Mount Points

The plugin provides several UI components:

* **EntityLikeDislikeRatingsCard**: Rating buttons for entity pages
* **EntityFeedbackResponseContent**: Feedback tab showing collected responses
* **UserEntitiesRatingsCard**: Aggregated ratings for user/group pages

## Prerequisites

* **Authentication Required**: This plugin requires user authentication. The guest identity
provider is not supported as the plugin needs to identify who submitted each rating.
* **Backend Plugin**: The backend plugin must be installed for the frontend to function.
* **Notifications (Optional)**: Integrates with Backstage Notifications to alert entity
owners of new feedback.

For more detailed configuration instructions, see the [plugin documentation](https://github.com/backstage/community-plugins/blob/main/workspaces/entity-feedback/plugins/entity-feedback/README.md).

packages:
- backstage-community-plugin-entity-feedback
- backstage-community-plugin-entity-feedback-backend

history:
added: '2026-01-14'
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/redhat-developer/rhdh-plugins/refs/heads/main/workspaces/extensions/json-schema/packages.json
apiVersion: extensions.backstage.io/v1alpha1
kind: Package
metadata:
name: backstage-community-plugin-entity-feedback-backend
namespace: rhdh
title: "@backstage-community/plugin-entity-feedback-backend"
links:
- url: https://github.com/backstage/community-plugins/blob/main/workspaces/entity-feedback/plugins/entity-feedback-backend/README.md
title: Plugin Overview (README)
- title: Source Code
url: https://github.com/backstage/community-plugins/tree/main/workspaces/entity-feedback/plugins/entity-feedback-backend
annotations:
backstage.io/source-location: url:https://github.com/backstage/community-plugins/tree/main/workspaces/entity-feedback
tags:
- feedback
- ratings
spec:
packageName: "@backstage-community/plugin-entity-feedback-backend"
dynamicArtifact: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-entity-feedback-backend:bs_1.45.3__0.14.0!backstage-community-plugin-entity-feedback-backend
version: 0.14.0
backstage:
role: backend-plugin
supportedVersions: 1.45.3
author: Backstage Community
support: community
lifecycle: active
partOf:
- entity-feedback
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/redhat-developer/rhdh-plugins/refs/heads/main/workspaces/extensions/json-schema/packages.json
apiVersion: extensions.backstage.io/v1alpha1
kind: Package
metadata:
name: backstage-community-plugin-entity-feedback
namespace: rhdh
title: "@backstage-community/plugin-entity-feedback"
links:
- url: https://github.com/backstage/community-plugins/blob/main/workspaces/entity-feedback/plugins/entity-feedback/README.md
title: Plugin Overview (README)
- title: Source Code
url: https://github.com/backstage/community-plugins/tree/main/workspaces/entity-feedback/plugins/entity-feedback
annotations:
backstage.io/source-location: url:https://github.com/backstage/community-plugins/tree/main/workspaces/entity-feedback
tags:
- feedback
- ratings
spec:
packageName: "@backstage-community/plugin-entity-feedback"
dynamicArtifact: oci://ghcr.io/redhat-developer/rhdh-plugin-export-overlays/backstage-community-plugin-entity-feedback:bs_1.45.3__0.12.0!backstage-community-plugin-entity-feedback
version: 0.12.0
backstage:
role: frontend-plugin
supportedVersions: 1.45.3
author: Backstage Community
support: community
lifecycle: active
partOf:
- entity-feedback
appConfigExamples:
- title: Like/Dislike rating (default)
content:
dynamicPlugins:
frontend:
backstage-community.plugin-entity-feedback:
mountPoints:
- mountPoint: entity.page.overview/cards
importName: EntityFeedbackResponseContent
config:
layout:
gridColumn: 1 / -1
- title: Star rating variant
content:
dynamicPlugins:
frontend:
backstage-community.plugin-entity-feedback:
appConfig:
entityFeedback:
ratings:
- variant: starred
mountPoints:
- mountPoint: entity.page.overview/cards
importName: EntityFeedbackResponseContent
config:
layout:
gridColumn: 1 / -1
2 changes: 2 additions & 0 deletions workspaces/entity-feedback/plugins-list.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
plugins/entity-feedback:
plugins/entity-feedback-backend: --embed-package @backstage/plugin-notifications-node
1 change: 1 addition & 0 deletions workspaces/entity-feedback/source.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"repo":"https://github.com/backstage/community-plugins","repo-ref":"8f9b3b0f695304e674f2457352bd60df1271c781","repo-flat":false,"repo-backstage-version":"1.45.3"}