Library

Components that feel like eeya.

A small, complete set for clear actions, confident messages, and recognizable brand moments.

Ribbon

One signature stroke. Use one variation per piece.

variant: core | extended | double | crop | mini; tone: lime | mint

core

extended

double

crop

Usage example
<Ribbon variant="extended" tone="lime" />

RibbonLoader

A branded loading and approval moment that respects reduced motion.

tone; progress (0–1, optional); label

15%

40%

70%

100%

live

Usage example
<RibbonLoader label="Checking your application" />

Button

Clear actions across light, dark, and warning contexts.

variant: primary | secondary | inverse | alert; size: sm | md | lg; loading; loadingLabel; asChild

Variants on light

On slate

Sizes

States

Default

Focus visible

Pressed

Loading

Disabled

Secondary disabled

In-app warning only

Usage example
<Button variant="primary" loading={isSubmitting}>Apply now</Button>

Panel

Flat color surfaces with safe text pairings built in.

tone: slate | lime | mint | light | white; radius: none | lg | xl

white

Your content stays readable.

light

Your content stays readable.

slate

Your content stays readable.

lime

Your content stays readable.

mint

Your content stays readable.

Usage example
<Panel tone="mint" className="p-8">...</Panel>

Heading

Bold, sentence-case headings in two levels.

level: headline | subhead; as: h1–h4

headline

Cash when you need it

subhead

Your loan details

Usage example
<Heading level="subhead">Your loan details</Heading>

Text

Regular body and supporting copy with an optional muted tone.

size: body | small; tone: default | muted

body

Apply on your phone in a few minutes.

small · muted

Terms and conditions apply.

Usage example
<Text tone="muted">Terms and conditions apply.</Text>