-
Feature
-
Resolution: Done
-
Normal
-
None
-
False
-
-
False
-
0% To Do, 0% In Progress, 100% Done
-
-
Developer Preview
-
M
-
Done
Feature Overview (aka. Goal Summary)
Enable the dynamic plugin management feature within the Extensions Catalog by default for Red Hat Developer Hub Local (RHDH Local) installations, providing a streamlined, out-of-the-box experience for users evaluating and customizing the platform.
User Story
As a developer using RHDH Local, I want to be able to install and manage plugins directly from the Extensions Catalog UI so that I can quickly evaluate the platform's features and customize my local instance without complex manual configuration.
Goals (aka. Expected User Outcomes)
This feature aims to improve the initial user experience by:
- Decreasing the time-to-value for new users, allowing them to add functionality to their local instance in minutes, not hours.
- Enabling rapid experimentation with different plugins, helping developers and platform engineers make informed decisions about which extensions best suit their organization's needs.
- Providing a clear and intuitive "in-app" workflow for plugin management, abstracting away the complexity of manually editing app-config-local.yaml files for simple add/remove/disable actions.
- Enhancing the overall out-of-the-box experience (OOTBE), making RHDH feel more accessible and powerful from the very first launch.
Requirements (aka. Acceptance Criteria)
These are the conditions that must be met for this feature to be considered complete:
- Default Development Mode for RHDH Local:
-
- Given a user initializes a new RHDH Local instance for the first time,
-
- When the instance starts up,
-
- Then it must run in development mode by default to allow for dynamic plugin installation.
- Default User Permissions:
-
- Given a default RHDH Local instance is running,
-
- When the user navigates to the Extensions Catalog (/extensions),
-
- Then they must have the necessary permissions to see and use the "Actions" menu (Install, Edit, Enable/Disable) on plugin cards.
- Plugin Installation Flow:
-
- Given a user is viewing a plugin in the Extensions Catalog that is not yet installed,
-
- When they click the "Install" button,
-
- Then they are presented with the configuration editor and, upon successful installation, are clearly notified that a backend restart is required to apply the changes.
- Documentation in README:
-
- Given a user is setting up RHDH Local,
-
- When they consult the project's README or getting started documentation,
-
- Then they will find a new section explaining how the dynamic plugin management feature works, why a restart is necessary, and how to perform the restart.
Out of Scope (Optional)
- Enabling this feature in production environments. This feature is explicitly for RHDH Local and local development and evaluation purposes only.
- Automated backend restarts. The user will be notified of the need to restart, but the restart itself will remain a manual process (e.g., docker compose down and re-running the docker compose up command).
- A granular, configurable permissions system for plugin installation. This feature will rely on setting appropriate default permissions for the local environment.
Customer Considerations (Optional)
This feature is primarily targeted atĀ developers working with up an RHDH Local environment. They are the most likely to be frustrated by complex initial setup steps. The goal is to make their first interaction with RHDH as smooth and productive as possible, encouraging further exploration of the platform.
Documentation Considerations
The README.md for the RHDH Local installation must be updated to include the following information:
- Feature Overview: A brief explanation that plugin management can now be done directly from the UI by default.
- Why a Restart is Required: A clear, non-technical explanation that changes to the backend (like adding a new plugin) require a restart to load the new code and apply the configuration.
- How to Restart: Simple, explicit instructions for restarting the local RHDH instanceĀ
- And example: Details of a specific (simple) plugin to install (or uninstall) just to try the feature (e.g. TechRadar, TODO or some other suitable plugin?)
- Development Only: A warning box or callout stating that this functionality is for local development environments and is not supported in production.