Onboarding
Swipeable full-screen intro slides with dots, Skip and Next. The last slide’s button finishes.
TodayΓÇÖs readings
Open Athic each day to the Mass readings, with a one-tap check-in when youΓÇÖve been to Mass.
Ask about the faith
Questions answered from the Catechism and Scripture, with the sources shown.
A private journal
Your Reconciliation Journal is encrypted on this device. Only you can read it.
Pray with the Rosary
Pray bead by bead, and find other prayers with audio and text.
Independent, not an official Church productTodayΓÇÖs readings
Open Athic each day to the Mass readings, with a one-tap check-in when youΓÇÖve been to Mass.
Ask about the faith
Questions answered from the Catechism and Scripture, with the sources shown.
A private journal
Your Reconciliation Journal is encrypted on this device. Only you can read it.
Pray with the Rosary
Pray bead by bead, and find other prayers with audio and text.
Independent, not an official Church productTodayΓÇÖs readings
Open Athic each day to the Mass readings, with a one-tap check-in when youΓÇÖve been to Mass.
Ask about the faith
Questions answered from the Catechism and Scripture, with the sources shown.
A private journal
Your Reconciliation Journal is encrypted on this device. Only you can read it.
Pray with the Rosary
Pray bead by bead, and find other prayers with audio and text.
Independent, not an official Church productTodayΓÇÖs readings
Open Athic each day to the Mass readings, with a one-tap check-in when youΓÇÖve been to Mass.
Ask about the faith
Questions answered from the Catechism and Scripture, with the sources shown.
A private journal
Your Reconciliation Journal is encrypted on this device. Only you can read it.
Pray with the Rosary
Pray bead by bead, and find other prayers with audio and text.
Independent, not an official Church productProps
| Prop | Type | Required | Default |
|---|---|---|---|
slides | OnboardingSlide[] | Yes | — |
index | number | undefined | No | — |
defaultIndex | number | undefined | No | 0 |
onIndexChange | ((index: number) => void) | undefined | No | — |
onDone | (() => void) | undefined | No | — |
skippable | boolean | undefined | No | true |
labels | OnboardingLabels | undefined | No | — |
logo | ReactNode | No | — |
header | ReactNode | No | — |
finishing | boolean | undefined | No | false |
fullscreen | boolean | undefined | No | false |
appearance | "default" | "classic" | undefined | No | — |
Accessibility
A carousel region (aria-roledescription="carousel"), focusable: ArrowLeft and ArrowRight change slide. Swiping is never the only way: Next, Back and the dots (role="tab" with aria-selected) do the same. Slides other than the current one are aria-hidden. Skip and the dots keep 44px targets; the track and the dot morph stop animating under prefers-reduced-motion.
data-rebar-* attributes
data-rebar-component="onboarding", data-rebar-fullscreen, data-rebar-state="finishing". Parts: top, logo, skip, viewport, track (data-rebar-dragging), slide (data-rebar-active), icon, title, description, note, footer, dots, dot, buttons.
Migrating to Ant Design
AntD Mobile's Swiper plus Steps-style dots is the closest match. Map slides to Swiper.Items and keep onDone on the last item's button.
appearance="classic"
appearance="classic" is a 480px column with a round filled icon, plain title and copy, 8px dots and compact pill buttons. Tokens: --rebar-onboarding-max-width / -icon-bg / -title-color / -description-color / -muted / -dot / -dot-on plus the classic button tokens.