showcase library
Building blocks for a clickable demo of an app, made from its real screens.
Classes
- FinishPrompt
- Offers to start over once the demo is finished and the visitor is back on the page that contains this widget, usually the home of the app.
- Highlight
- One explanation shown on top of a screen.
- HighlightedPage
- Shows the highlights of a page on top of child while that page is the one on screen.
- ShowcaseConfig
-
How the host page configures the demo, read from the url:
?highlights=off&insets=ios. -
Opens and closes the pages of the demo. Get it with
context.showcase. -
Navigation of the demo, with the plain Flutter Navigator. The pages are the values of an enum
P, opened withcontext.showcase, and every page gets its highlights. - ShowcaseScope
- Gives the widgets of the kit, and your own, access to the ShowcaseState. Put it above the app.
- ShowcaseShell
-
Wraps the app, for the
builderofMaterialApp: it adds the safe areas that insets ask for and shows the notices above everything else. - ShowcaseState
- What every demo needs to remember. Extend it with the data of your app and fill resetData to put that data back at the start.
- ShowcaseStrings
-
All texts the kit shows itself. The defaults are English, pass your own to
ShowcaseScopefor another language.
Extensions
- OutOfScope on BuildContext
- Lets any widget of the demo tell the visitor a part of the app is left out.
- Gives access to the navigation of the demo.
Constants
- iosInsets → const EdgeInsets
- Safe areas of an iPhone 16, for embedding in a website without a status bar of its own.
Typedefs
-
ShowcaseHighlightsBuilder<
P extends Enum> = List< Highlight> Function(BuildContext context, P page, ShowcaseState state) - The highlights of a page, which may depend on how far the visitor has come.
-
ShowcasePageBuilder<
P extends Enum> = Widget Function(BuildContext context, P page, Object? args) - Builds the screen for a page, with the arguments it was opened with.
- WidgetMatcher = bool Function(Widget widget)
-
Decides whether
widgetis the target of a Highlight.