Pub Version

Storybook Flutter

A cross-platform storybook for showcasing widgets. It should work at all platforms supported by Flutter.

Getting Started

class MyApp extends StatelessWidget {
  Widget build(BuildContext context) =>
        stories: [
            name: 'Screens/Counter',
            description: 'Demo Counter app with about dialog.',
            builder: (context) => CounterPage(
              title: context.knobs.text(label: 'Title', initial: 'Counter'),
              enabled: context.knobs.boolean(label: 'Enabled', initial: true),
            name: 'Widgets/Text',
            description: 'Simple text widget.',
            builder: (context) => const Center(child: Text('Simple text')),


By default, each story is wrapped into MaterialApp.

You can override this behavior by providing either wrapperBuilder to the Storybook. You can either use one of the default ones (materialWrapper/cupertinoWrapper) or provide a fully custom wrapper. In the latest case, make sure to use the child widget that will contain the story.


Almost all the functionality is provided by plugins. Even contents and knobs are plugins (although they are first-party plugins).

Plugins documentation is TBD, but you can take a look at the existing first-party plugins: ContentsPlugin, DeviceFramePlugin, KnobsPlugin, ThemModePlugin.

Features and bugs

Please file feature requests and bugs at the issue tracker.