CLI previewInstall commands shown on this site are not released yet.

DocsComponentsCore

Billboard

React example follows below.
ts
import { Billboard, Heading, Text, Button } from "@grassroot/ui-react";
<Billboard tone="indigo" decorations={[
{ shape: "circle", position: "top-right", tone: "amber", size: 150 },
{ shape: "triangle", position: "bottom-left", tone: "teal", size: 110, rotate: -12 },
]}>
<Heading level={2}>Ship the interface</Heading>
</Billboard>
ts
<script setup lang="ts">
import { Heading, Billboard } from "@grassroot/ui-vue";
</script>
<template>
<Billboard
tone="indigo"
:decorations="[
{ shape: 'circle', position: 'top-right', tone: 'amber', size: 150 },
{ shape: 'triangle', position: 'bottom-left', tone: 'teal', size: 110, rotate: -12 },
]"
>
<Heading :level="2">Ship the interface</Heading>
</Billboard>
</template>
ts
import { Component } from "@angular/core";
import { GrassrootHeading, GrassrootBillboard } from "@grassroot/ui-angular";
@Component({
selector: "app-example",
standalone: true,
imports: [GrassrootHeading, GrassrootBillboard],
template: `
<grassroot-billboard
tone="indigo"
[decorations]="[
{ shape: 'circle', position: 'top-right', tone: 'amber', size: 150 },
{ shape: 'triangle', position: 'bottom-left', tone: 'teal', size: 110, rotate: -12 },
]"
>
<grassroot-heading [level]="2">Ship the interface</grassroot-heading>
</grassroot-billboard>
`,
})
export class ExampleComponent {
}
ts
<script lang="ts">
import { Heading, Billboard } from "@grassroot/ui-svelte";
</script>
<Billboard
tone="indigo"
decorations={[
{ shape: "circle", position: "top-right", tone: "amber", size: 150 },
{ shape: "triangle", position: "bottom-left", tone: "teal", size: 110, rotate: -12 },
]}
>
<Heading level={2}>Ship the interface</Heading>
</Billboard>
ts
import { Heading, Billboard } from "@grassroot/ui-solid";
export function Example() {
return (
<>
<Billboard
tone="indigo"
decorations={[
{ shape: "circle", position: "top-right", tone: "amber", size: 150 },
{ shape: "triangle", position: "bottom-left", tone: "teal", size: 110, rotate: -12 },
]}
>
<Heading level={2}>Ship the interface</Heading>
</Billboard>
</>
);
}

Installation

bash
pnpm dlx grassroot add ui/billboard
bash
npx grassroot@latest add ui/billboard
bash
yarn dlx grassroot add ui/billboard
bash
bunx grassroot add ui/billboard

API Reference

BillboardProps
PropTypeDefault
tonePanel fill tone.Tone | undefined"indigo"
blobToneShorthand: tone of the default single top-right circle (when `decorations` is omitted).Tone | undefined"amber"
decorationsDecorative shapes bleeding off the corners. Omit for one amber circle.BillboardDecoration[] | undefined