Klarhimmel UI

Nonprofit

Template

A page for an association or charity (Havsbandet, a coastal clean-up group): the cause and one donate button first, the mission, impact in numbers, one clean-up told as a story, where donations go, upcoming events, the people and a gift card. Deep teal and sand, a serif face.

npx shadcn add @klarhimmel/template-nonprofit
nonprofit preview

Install

npx shadcn add @klarhimmel/template-nonprofit

The page

12 sections, in order

Each section is one block with this template's own copy. The anchor is the id in-page links point at.

AnchorBlockContent
(none)banner/announcementBeach clean-up at Askim, Saturday 18 October, 10:00. Gloves provided.
#topheader/menuHavsbandet
#herohero/splitClean coasts, one Saturday at a time
#missioncontent/columnsBecause the sea gives back what we throw in
#impactstats/splitEleven years of Saturdays
#storycase-study/storyForty people, three hours, a beach you can walk barefoot on
#fundsstats/barsYour krona, in four parts
#eventsblog/listCome along
#peopleteam/departmentsRun by members, helped by two employees
#volunteernewsletter/splitHear about the next clean-up first
#donatecta/card200 kronor buys gloves and bags for ten volunteers
(none)footer/link-columnsHavsbandet

Install

CLI

npx shadcn add @klarhimmel/template-nonprofit

pnpm

pnpm dlx shadcn@latest add @klarhimmel/template-nonprofit
Style
  • Klarhimmel
  • Geist / Geist
  • radius 8
Needs
React 19, Tailwind CSS v4 and the theme import. The page and every block it uses land under components/klarhimmel/.

Before you ship

Wire these before shipping

The template is a finished page with placeholder wiring. These are yours to connect.

Links

`#section` links jump within the page. Links to https://example.com are placeholders: point them at your own pages.

Images

The illustrations ship with the template (public/klarhimmel/art/nonprofit/). They are artwork, not photographs: replace the `media.src` values with your own photos.

Forms

Set `action` on the volunteer sign-up and the footer newsletter (it is `/replace-with-your-endpoint` now). With `method: 'post'` the form submits natively, with no JavaScript. The live demo never submits.

Style

Uses the default Klarhimmel palette, Geist fonts, radius and spacing. Import theme.css after Tailwind.