Copy. Own. Customize.

Flad ships UI components into your Flutter repo.

Flad is a tiny CLI that copies polished UI widgets into your project as plain Dart files. You own the code, tweak it freely, and ship fast.

No runtime dependency ThemeExtension tokens Registry ready
$ dart pub global activate flad_cli
$ flad init
$ flad add button card input
Components
40+
Commands
10+
Runtime deps
0

Why teams pick Flad

Source-first components with zero lock-in.

Source-first

Everything is copied into your repo. No hidden runtime package.

ThemeExtension tokens

Each component ships with tokens tied to your ColorScheme.

Dependency aware

Add one component and Flad auto-copies what it depends on.

Remote registry

Fetch templates from GitHub when you want the latest updates.

Quickstart

Install once, then copy components in seconds.

Install

dart pub global activate flad_cli

Init

flad init

Add components

flad add button card input

Commands

Every command is small, explicit, and predictable.

Init

Creates the target directory and generates theme tokens.

flad init --style default

Add

Add one or many components. No overwrite unless asked.

flad add button card

Registry

Fetch components from the remote registry.

flad add button --registry

List + preview

Browse components and inspect metadata.

flad list --json

Diff + remove

Compare or remove local copies when needed.

flad diff button

Doctor

Validate project and config health in one run.

flad doctor

Component catalog

Inputs, layout, feedback, and display staples.

Inputs

button icon_button input select textarea checkbox radio switch slider date_picker search_bar rating

Layout

card divider drawer tabs app_bar bottom_nav navigation_rail table list_tile pagination breadcrumb page_header timeline

Feedback

alert banner toast snackbar dialog bottom_sheet progress skeleton empty_state

Display

avatar badge chip tooltip dropdown_menu stat_card

Design presets

Pick a style during init and extend it in your app theme.

Default

Balanced tokens with a clean radius.

  • Radius 8
  • Border 1px
  • Seed blue

Brutalist

Hard edges and high contrast.

  • Radius 0
  • Border 2px
  • Seed black

Soft

Rounder surfaces and gentle fills.

  • Radius 16
  • Border 1px
  • Seed purple

Ready to copy your next widget?

Run flad init and start adding components right away.

Start now