Skip to content
UI Kit
Accent color

Donations and support

For associations, foundations and causes. Amounts with their impact, a campaign goal that fills, tiers to pick and bank details to copy.

4 variants
Switch category

Donations and support

Amount picker

Once or monthly with a gliding switch, preset amounts or your own. The line below tells what the chosen amount does, the button says the amount.

Open in Studio

Campaign goal

The amount counts up, the bar fills when it comes into view. Recent gifts with a short note rise in next to it.

Open in Studio

Impact tiers

Each amount as a card with what it does. Pick one, the button takes over the amount. Light follows the pointer.

Open in Studio

Other ways to help

Bank details with a copy button per field, then volunteering, company partnerships and gifts in kind.

Open in Studio

Details

What Donations and support brings along, read from the registry and the source.

Variants
4
Version
1.0.1 · since 1.0.0
File
components/ui/donation.tsx
Brings along
utilskitbuttoniconnumber-tickerrevealmotionsection
npm packages
None
Languages
English and German, 26 texts of its own

Props

The DonationProps interface from components/ui/donation.tsx, with the comments from the code.

  • variantoptional
    DonationVariant

    amount-pickercampaignimpact-tiersother-ways

  • eyebrowoptional
    React.ReactNode
  • titlerequired
    React.ReactNode
  • descriptionoptional
    React.ReactNode
  • currencyoptional
    string

    ISO currency code, default EUR

  • amountsoptional
    { once: number[]; monthly: number[] }

    amount-picker: preset amounts per frequency

  • frequencyoptional
    DonationFrequency

    oncemonthly

    Start frequency, default monthly

  • impactoptional
    { amount: number; text: string }[]

    What an amount does, the highest one below the chosen amount is shown

  • goaloptional
    { raised: number; target: number; donors: number; daysLeft?: number }

    campaign: the goal

  • supportersoptional
    { name: string; amount: number; when: string; note?: string }[]

    campaign: recent gifts

  • tiersoptional
    { amount: number; title: string; text: string; icon?: IconName; popular?: boolean }[]

    impact-tiers: the cards

  • bankoptional
    { holder: string; iban: string; bic?: string; bank?: string; reference?: string }

    other-ways: bank details

  • waysoptional
    { icon: IconName; title: string; text: string; action: string; href: string }[]

    other-ways: more ways to help

  • trustoptional
    string[]

    Short trust points, e.g. tax-deductible, secure payment

  • mediaoptional
    React.ReactNode

    amount-picker: a picture

  • actionoptional
    string

    Where the form posts

  • onDonateoptional
    (amount: number, frequency: DonationFrequency) => void

Built-in texts

Donations and support writes these texts itself. The language follows the KitProvider, the labels prop replaces single ones.

Show all 26 texts
onceEnglish OnceGerman Einmalig
monthlyEnglish MonthlyGerman Monatlich
frequencyEnglish How oftenGerman Wie oft
amountEnglish AmountGerman Betrag
otherEnglish Other amountGerman Anderer Betrag
perMonthEnglish {a} a monthGerman {a} im Monat
donateEnglish Donate {a}German {a} spenden
donateNowEnglish Donate nowGerman Jetzt spenden
donateMonthlyEnglish Give {a} a monthGerman {a} monatlich spenden
minimumEnglish Please enter at least {a}.German Bitte gib mindestens {a} ein.
raisedEnglish raised of {a}German von {a} gesammelt
donorsEnglish donorsGerman Spenderinnen und Spender
daysLeftEnglish days leftGerman Tage noch
recentEnglish Recent giftsGerman Neueste Spenden
popularEnglish Most chosenGerman Am häufigsten gewählt
bankTitleEnglish Bank transferGerman Überweisung
holderEnglish Account holderGerman Kontoinhaber
ibanEnglish IBANGerman IBAN
bicEnglish BICGerman BIC
bankEnglish BankGerman Bank
referenceEnglish ReferenceGerman Verwendungszweck
copyEnglish Copy {f}German {f} kopieren
copiedEnglish {f} copiedGerman {f} kopiert
percentEnglish {n}%German {n} %
reachedEnglish reachedGerman erreicht
pctEnglish %German  %

Accessibility

Read from the source of the component.

  • Sets aria-checked, aria-describedby, aria-invalid, aria-label, aria-live, aria-valuemax, aria-valuemin and aria-valuenow, so screen readers announce purpose and state.
  • Uses the roles alert, progressbar, radio, radiogroup and status.
  • Announces changes through a live region without moving focus.
  • Every field has a label, visible or for screen readers.
  • Adds text for screen readers where icons and graphics stand alone.
  • Shows a visible focus ring when used with the keyboard.
  • The server renders the starting state in full, JavaScript only adds the interaction.

Motion

  • Rises in briefly the first time it comes into view (kit-rise, useInView).
  • Brings animations of its own, calmly timed and without wobble.
  • With reduced motion (prefers-reduced-motion) it stays still. 4 places in the code switch motion off then.

Frequent questions

How do I install Donations and support?

With aiw add @ai-website/donation. The command puts components/ui/donation.tsx into your project, the code is yours from then on. It brings along button, icon, number-ticker, reveal, motion and section. It needs no further npm packages.

Which variants does Donations and support have?

4 variants, Amount picker, Campaign goal, Impact tiers and Other ways to help. You pick one with the variant prop, for example variant="campaign".

Can I translate the texts of Donations and support?

Yes. Donations and support carries 26 texts of its own in English and German, such as “Once”, “Monthly” and “How often”. The language follows the KitProvider, single texts change through the labels prop.

Can an AI assistant build with Donations and support?

Yes. Through the MCP server of the aiw CLI, Claude, Cursor, GitHub Copilot, Windsurf, Codex and Gemini find Donations and support with aiw_components and install it with aiw_add @ai-website/donation. Name the variant in your prompt, for example variant="amount-picker", and the assistant writes your content straight into the props.

Can I adjust Donations and support without code?

Yes, in the Studio. All 4 variants are editable there, texts, lists and switches. The Studio writes the matching Donation code to copy.

Often searched

Jump to

Copied to the clipboard