Plugin API
A plugin is just a JavaScript object that has the following properties:
Key
Type
Required
Description
name
string
yes
Name of the plugin.
key
string
no
This property is used as an ID throughout the system.
description
string
no
Plugin description.
version
string
no
Plugin version.
categories
string[]
no
icon
DynamicIconProps
no
These are props of the DynamicIcon component. This value can also be a thunk, i.e. a function that should return the props object. This function receives BlueBase context as param.
enabled
boolean
no
(Default = true) Flag to check if a plugin is enabled.
filters
FilterNestedCollection
no
components
ComponentCollection
no
themes
ThemeCollection
no
defaultConfigs
ConfigCollection
no
Plugin Categories
Categories are used in plugin listing pages. Currently, we recognise the following kind of plugins, but a developer may define his own category as well.
Key
Description
app
A plugin that is a sub-app in the system. This applies that when BlueBase is used as a bigger platform, and different features are represented as individuals apps inside the platform.
store
A plugin that provides a state store functionality. i.e. Redux.
router
A plugin that provides routing mechanism. i.e. react-router or React Navigation.
logging
A plugin that provides integration with a logging service. i.e. Sentry.
theme
A plugin that provides a single or multiple themes.
analytics
A plugin that provides integration with a logging service. i.e. Google Analytics.
Example
Last updated