✨Quick start
This will explain you how to use the databrain plugin and customization.
Step 1: install databrain package
npm install @databrainhq/plugin
Step 2: import in top level of your application e.g. main/index/app
import '@databrainhq/plugin/web';
Step 3: Then use it anywhere in your app.
<dbn-metric token="token" metric-id="metricId" />
<dbn-dashboard token="token" dashboard-id="dashboardId" />
Step 4: Customization.
<dbn-dashboard
token="token"
dashboard-id="dashboardId"
options={{
disableMetricCreation: false, // optional - false by default
disableMetricUpdationtion: false, // optional - false by default
disableMetricDeletion: false, // optional - false by default
disableLayoutCustomization: false, // optional - false by default
chartColors: ["red", "blue", "orange", "..."], // array of color strings - by default recharts default colors
hideDashboardName: true // optional - false by default
}}
theme={JSON.stringify({
colors: {
background: "",
primary: "",
primaryLight: "",
primaryDark: "",
secondary: "",
secondaryLight: "",
secondaryDark: "",
tertiary: "",
tertiaryLight: "",
tertiaryDark: "",
error: "",
errorLight: "",
errorDark: "",
warning: "",
warningLight: "",
warningDark: "",
dark: "",
light: "",
gray50: "",
gray100: "",
gray200: "",
gray300: "",
gray400: "",
gray500: "",
gray600: "",
gray700: "",
gray800: "",
gray900: "",
},
border: {
radiusNone: "0",
radiusDefault: "5px",
radiusSm: "2px",
radiusMd: "10px",
radiusLg: "16px",
radiusXl: "20px",
radius2xl: "24px",
radius3xl: "30px",
radiusFull: "50%",
},
typography: {
fontSize: "9px",
fontFamily: "Inter",
fontWeightThin: 200,
fontWeightLight: 300,
fontWeightRegular: 400,
fontWeightSemibold: 500,
fontWeightBold: 600,
colorPrimary: "",
colorSecondary: "",
colorTertiary: "",
},
breakpoint: {
xs: 360,
sm: 512,
md: 720,
lg: 990,
xl: 1280,
},
metricLayoutCols: {
lg: 12,
md: 10,
sm: 6,
xs: 4,
xxs: 2,
},
shadow: {
primary: "",
secondary: "",
tertiary: ""
}
})}
/>
<dbn-metric
token={token}
metric-id={metricId}
width={500}
height={300}
style={style}
class-name={className}
chart-colors={["red", "blue", "orange", "..."]} // array of color strings - by default recharts default colors
theme={JSON.stringify({
colors: {
background: "",
primary: "",
primaryLight: "",
primaryDark: "",
secondary: "",
secondaryLight: "",
secondaryDark: "",
tertiary: "",
tertiaryLight: "",
tertiaryDark: "",
error: "",
errorLight: "",
errorDark: "",
warning: "",
warningLight: "",
warningDark: "",
dark: "",
light: "",
gray50: "",
gray100: "",
gray200: "",
gray300: "",
gray400: "",
gray500: "",
gray600: "",
gray700: "",
gray800: "",
gray900: "",
},
border: {
radiusNone: "0",
radiusDefault: "5px",
radiusSm: "2px",
radiusMd: "10px",
radiusLg: "16px",
radiusXl: "20px",
radius2xl: "24px",
radius3xl: "30px",
radiusFull: "50%",
},
typography: {
fontSize: "9px",
fontFamily: "Inter",
fontWeightThin: 200,
fontWeightLight: 300,
fontWeightRegular: 400,
fontWeightSemibold: 500,
fontWeightBold: 600,
colorPrimary: "",
colorSecondary: "",
colorTertiary: "",
},
breakpoint: {
xs: 360,
sm: 512,
md: 720,
lg: 990,
xl: 1280,
},
metricLayoutCols: {
lg: 12,
md: 10,
sm: 6,
xs: 4,
xxs: 2,
},
shadow: {
primary: "",
secondary: "",
tertiary: ""
}
})}
/>
Note: If you are getting Property 'dbn-dashboard' does not exist on type 'JSX.IntrinsicElements'.
or Property 'dbn-metric' does not exist on type 'JSX.IntrinsicElements'.
Create a dbn.d.ts
file in your src folder or in your global types.d.ts
file add these following lines.
```typescript
declare namespace JSX {
interface IntrinsicElements {
"dbn-dashboard": any;
"dbn-metric": any;
}
}
```
For more information please refer to this issue https://github.com/microsoft/TypeScript/issues/48310
Last updated