Fylgja UI
Copy-paste UI components built on plain, accessible HTML. Filter by category and drop them into any project.
Button
The button styles Fylgja applies to native <button> elements and .btn links, driven by CSS variables.
What is Fylgja?
A lightweight, classless-friendly CSS library built on modern standards.
Does it require a build step?
No. Fylgja works buildless straight from a CDN, or with your bundler.
Is it accessible?
Yes. It builds on native elements, so semantics and keyboard support come for free.
Accordion
A stack of collapsible sections built on native <details> and <summary>, with single-open behavior handled by the browser.
- New Beta 8
Badge
A small pill for labels, statuses, and counts, recolored through CSS variables.
Note
Useful information that users should know, even when skimming the page.
Callout
A highlighted block for a note, tip, warning, or caution, built from a paragraph title and plain content.
Select
A native <select> dropdown styled by Fylgja, with a custom arrow and consistent control sizing.
Card title
A card groups related content into a single, contained surface, ideal for posts, products, or any self-contained block.
Card
A surface that groups related content into one contained block, with optional shadow modifiers.
Breadcrumbs
A trail of links showing where the current page sits in the site hierarchy.
Modal
A simple modal dialog for presenting content or a message, built on the native HTML <dialog> element and opened declaratively with invoker commands.
Carousel
A horizontal scroll-snap slider built from Fylgja utilities, optionally enhanced with the Snap Slider for a pager and keyboard control.
Release notes
Fylgja 3.0 is here
Smaller, faster, and built on native CSS features.
Heading Group
A heading with an eyebrow above it and a subtitle below it, grouped in a native <hgroup>.
Button Group
A segmented control: a group of joined buttons where one option is selected, built from radios styled as buttons.
Fylgja core packages Package Purpose Gzipped @fylgja/base Element defaults and typography 2.1 kB @fylgja/utilities Dynamic utility classes 3.4 kB @fylgja/tokens Design tokens 1.2 kB Table
A native HTML table styled by Fylgja, for presenting rows and columns of data.
Already expanded
Add the open attribute to a callout that should start unfolded.
Callout Collapse
A callout the reader can fold away, built on native details and summary with no JavaScript.
Sale
Sunny Cat Wallpaper
€18.99
Product Label
A badge pinned over a product image to flag a sale, a new arrival or any other status.
- Your changes have been saved.A new version is available.Your session expires soon.Your order has been placed.
Toast
A short message that confirms what the user just did, with default, info, warning, error, and success styles.
Review Stars
A star rating input built from radio buttons and the input-group --steps modifier, with no JavaScript.
Exploring Fylgja in the Wilds
Group an image and text into one surface. On wider screens the card lays out side by side.
Media Card
A card that pairs an image with text, laying out side by side on wider screens.
Pagination
Numbered page links with previous and next controls for navigating paged content.
Confirmation Modal
A modal that asks the reader to make a yes or no choice before continuing, built on <dialog> with a form that reports the choice.
Trusted by
- Aurora
- Basalt
- Cinder
- Driftwood
- Ember
- Fathom
Marquee
A continuously scrolling strip of brand logos or text, pausing on hover and standing still under reduced motion.
Our services
Heading Underline
A heading with a short brand colored bar below it, drawn in CSS so the markup stays a plain heading.
Icon Button
A button whose content is an icon, squared automatically and given an accessible name with aria-label.
JDAvatar
A round image representing a user, with an initials fallback and a stacked group.
Loading article
Skeleton
Gray placeholder shapes that hold the layout while content loads, with a shimmer that stops under reduced motion.
Range
A styled native range slider with a CSS-only value fill, customized through CSS variables.
-
Sunny Cat Wallpaper
€18.99
-
Orange Fox Wallpaper
€6.00
-
Watchful Dog Wallpaper
€112.56
Product Grid
A responsive grid of product cards that reflows by available width, with no media queries.
-
Fylgja is a lightweight CSS library built on modern web standards.
Install the packages you need from npm, or load them straight from a CDN.
Write plain HTML. Fylgja styles the native elements for you.
Tabs
Switch between related panels of content in one place, with a scrollable strip of tab buttons and a small script.
Offcanvas
A panel that slides in from a screen edge, built on the native <dialog> element with Fylgja's small .offcanvas rule.
Compare Slider
A before and after slider that reveals one image over another, driven by a native range input with CSS only.
Featured work
Heading HR
A heading set between horizontal lines, with variants for a line on one side only.
Speed Dial
A floating action button that reveals a small set of related actions, built on the Popover API and opened with invoker commands.
Meter
A native meter for a measurement in a known range, coloring itself good, average or poor from its own value.
- Something went wrong. Your changes were not saved.
Alert
A toast style message in the top corner of the viewport for problems that need attention, built on a manual popover.
Search Box
A search field and its submit button joined into one control, wrapped in the native search landmark.
Pro plan
Everything in Starter, plus priority support and unlimited projects.
Gradient Bordered Card
A card whose border is a gradient, for singling out one option in a row without changing its size.
- Cart (completed)
- Shipping (completed)
- Payment
- Review
Stepper
A progress indicator for multi-step flows, built on an ordered list with the current step marked by aria-current.
- Shortcut: Ctrl + S
Tooltip
A short text hint that appears on hover or keyboard focus, built on a hint popover opened with interestfor and placed with CSS anchor positioning.
Button Corner Shape
Buttons with beveled, notched, scooped, or squircle corners, made with the CSS corner-shape property on top of the button radius.
Progress
A native progress bar for how far a task has run, determinate or indeterminate.
Input Switch
A toggle switch for an on/off setting, built on a native checkbox with role=switch.
Image Banner
A full-width image with a heading and call to action laid over it, darkened just enough to stay readable.
Acme - Home
- Products
- About
Navbar
A site header with a brand, the main navigation links, and a drawer menu on small screens.
- File options
Menu
A dropdown of actions opened from a button, built on the native Popover API and CSS anchor positioning.
Gallery
A responsive grid of images, with an optional lightbox that opens each one larger in a native dialog.
-
- Enter an email address, like me@example.com.
Form Field
A labeled form control with an error message that appears only when native validation fails.
Split Banner
A banner split into an image half and a text half, stacking into one column on small screens.
Action List
A vertical list of actions or links, with optional icons, descriptions, and dividers.
-
Version 2.0 released
A new token set, container query utilities, and a smaller base.
-
Public beta
The first builds go out to early adopters for feedback.
-
Project kickoff
The idea takes shape as a set of small, independent CSS packages.
Timeline
An ordered list of dated events along a vertical line, for changelogs, project history, and order tracking.
-
Multiselect
Pick several options from a short list, built on a fieldset of checkboxes with arrow key navigation from focusgroup.
Build the web you want
Fylgja gives you modern defaults and stops there, so the rest of the page stays yours.
CTA Banner
A text banner with a heading and an action, for closing a page with one clear next step.
Inline Footer
A single row footer with the copyright and a few links, set off from the page by a thin border.
Classic Footer
A footer with columns of grouped links above a subfooter holding the copyright and social icons.
Brand Footer
A footer with a wide branding column on the left and the link groups pushed to the right, above a shared subfooter.
-
Classless base
Native elements look right out of the box, so most markup needs no classes at all.
-
Design tokens
Colors, shadows, and easings as CSS variables you can pick from.
-
Utilities
Layout helpers driven by variables.
-
No build step
Import the CSS and go.
-
Pick what you need
Every package works on its own, so you only ship the parts your project uses.
Bento Grid
A grid of cards in mixed sizes for feature overviews and landing pages, stacking to one column on small screens.
-
No components match your filters.