|
| 1 | +// Module is included in the following assemblies: |
| 2 | +// |
| 3 | +// * openshift-docs/web_console/dynamic-plug-ins.adoc |
| 4 | + |
| 5 | +:_content-type: CONCEPT |
| 6 | +[id="about-dynamic-plugins_{context}"] |
| 7 | += About dynamic plug-ins |
| 8 | + |
| 9 | +A dynamic plug-in allows you to add custom pages and other extensions to your interface at runtime. The `ConsolePlugin` custom resource registers plug-ins with the console, and a cluster administrator enables plug-ins in the `console-operator` configuration. |
| 10 | + |
| 11 | +[id="dynamic-plugins-features"] |
| 12 | +== Key features |
| 13 | + |
| 14 | +A dynamic plug-in allows you to make the following customizations to the {product-title} experience: |
| 15 | + |
| 16 | +* Add custom pages. |
| 17 | +* Add perspectives and update navigation items. |
| 18 | +* Add tabs and actions to resource pages. |
| 19 | + |
| 20 | +== PatternFly 4 guidelines |
| 21 | +When creating your plug-in, follow these guidelines for using PatternFly: |
| 22 | + |
| 23 | +* Use link:https://www.patternfly.org/v4/[PatternFly4] components and PatternFly CSS variables. Core PatternFly components are available through the SDK. Using PatternFly components and variables will help your plug-in look consistent in future console versions. |
| 24 | +* Make your plug-in accessible by following link:https://www.patternfly.org/v4/accessibility/accessibility-fundamentals/[PatternFly's accessibility fundamentals]. |
| 25 | +* _Do not_ use other CSS libraries such as Bootstrap or Tailwind. They can conflict with PatternFly and will not match the console look and feel. |
| 26 | + |
| 27 | +[id="general-plug-in-guidelines"] |
| 28 | +== General guidelines |
| 29 | +When creating your plug-in, follow these general guidelines: |
| 30 | + |
| 31 | +* Prefix your CSS class names with your plug-in name to avoid collisions. For example, `my-plugin_\_heading` and `my-plugin_\_icon`. |
| 32 | +* Maintain a consistent look, feel, and behavior with other console pages. |
| 33 | +* Use link:https://github.com/openshift/enhancements/blob/master/enhancements/console/dynamic-plugins.md#localization[react-i18next] for localization. |
| 34 | +* _Do not_ use console CSS classes in your markup or override console CSS classes. These are not APIs and are subject to change. Using them might break your plug-in. Avoid selectors like element selectors that could affect markup outside of your plug-in’s components. |
0 commit comments