CLAUDE.md@bulma-ui/src/elements · git:20260704.209df49 · 2026-07-04 · sha256 ab115a86fd785db9
CLAUDE.md@bulma-ui/src/elements git:20260704.209df49A
Immutable. This exact content never changes and is served at /api/v1/blob/ab115a86fd785db9.
# elements/ — simple building blocks Bulma's _elements_: single-purpose components that render (mostly) one HTML element with Bulma classes — Button, Box, Block, Content, Delete, Icon, Image, Notification, Progress, Table, Tag, Title, … **Belongs here?** One element, one Bulma concept, no internal state or subcomponents. Interactive multi-part widgets (dropdowns, modals, …) go in `../components/`; page structure in `../layout/`; anything with a `Field`/`Control` role in `../form/`. Layout is flat: `Foo.tsx` + `Foo.stories.tsx`, with tests in `__tests__/Foo.test.tsx`. Follow the anatomy rule in `bulma-ui/CLAUDE.md` (test + story + docs page + export + catalog). Notes: - Also home to plain semantic-HTML wrappers (Paragraph, Span, Strong, the Table family) that exist so helper props work on ordinary markup. - Everything here is styled by stock Bulma — no SCSS, except extras like `LinkButton` (partial in `../scss/elements/`). - `Icon` supports multiple icon libraries via the `library` prop (default `fa`); prefix handling has known sharp edges (#189) — don't change `name`/`icon` semantics casually.