suiss/ui · Block
Onboarding
A paged onboarding flow with illustrations, a page indicator and Continue and Skip buttons.
Onboarding is an open-source block from suiss/ui for React Native, SwiftUI and Jetpack Compose. The @esuiss/ui CLI copies its source into your project, so you own the code.

A Carousel of pages, each with an icon illustration, a title and a description. A BottomBar holds a PageIndicator you can tap to jump to a page, a Continue Button that moves to the next page and becomes Get started on the last, and a Skip button.
Installation
The CLI also adds what it builds on: Bottom Bar, Button, Carousel, Icon, Page Indicator, Screen, Text.
Manual
- Install the dependencies:
-
Add the pieces it builds on: Bottom Bar, Button, Carousel, Icon, Page Indicator, Screen, Text.
-
Copy the source into
components/blocks/onboarding.tsx:
- Update the import paths to match your project.
- Install the dependencies:
-
Add the pieces it builds on: Bottom Bar, Button, Carousel, Icon, Page Indicator, Screen, Text.
-
Copy the source into
components/blocks/onboarding.tsx:
- Update the import paths to match your project.
- Install the dependencies:
-
Add the pieces it builds on: Bottom Bar, Button, Carousel, Icon, Page Indicator, Screen, Text.
-
Copy the source into
components/blocks/onboarding.tsx:
- Update the import paths to match your project.
-
Target iOS 17 or later.
-
Add the Swift package to your app:
- Copy the theme files every view uses:
- Copy the source and every file it uses:
- Add the files to your app target.
- Set
minSdkto 24 or higher and add the dependencies:
- Copy the theme files every view uses:
- Copy the source and every file it uses:
- Update the
com.esuiss.uipackage names to match your project.
Usage
Pass your own pages (each with a title, description and optional illustration), or edit DEFAULT_PAGES. onDone is called from Get started and Skip.
