An open API service indexing awesome lists of open source software.

https://github.com/danielsaidi/OnboardingKit

OnboardingKit is a Swift SDK that helps you create onboarding experiences in Swift and SwiftUI.
https://github.com/danielsaidi/OnboardingKit

cocoapods hint ios macos onboarding swift swiftui tutorial tvos visionos watchos

Last synced: 2 months ago
JSON representation

OnboardingKit is a Swift SDK that helps you create onboarding experiences in Swift and SwiftUI.

Awesome Lists containing this project

README

          


Project Icon


Version
Swift 6.0
Swift UI
Documentation
MIT License
Sponsor my work

# OnboardingKit

OnboardingKit is SwiftUI SDK that helps you create amazing onboarding experiences on all major Apple platforms.



OnboardingKit has different `Onboarding` types, powerful onboarding view components like ``OnboardingPageView`` and ``OnboardingSlideshow``, an ``OnboardingScreen`` that can wrap any onboarding flow, and much more.

## Installation

OnboardingKit can be installed with the Swift Package Manager:

```
https://github.com/danielsaidi/OnboardingKit.git
```

## Support My Work

You can [become a sponsor][Sponsors] to help me dedicate more time on my various [open-source tools][OpenSource]. Every contribution, no matter the size, makes a real difference in keeping these tools free and actively developed.

## Getting started

OnboardingKit has various onboarding types and views that can be used to tailor an app's onboarding behavior.

The various ``Onboarding`` types defines unique onboarding experience behaviors, for instance:

* ``Onboarding`` is presented right away, and only once.
* ``ConditionalOnboarding`` is presented when a certain condition returns `true`.
* ``CorrectBehaviorOnboarding`` is presented when a user is not behaving as intended.
* ``DelayedOnboarding`` is presented after a certain number of presentation attempts.

OnboardingKit has views that can be used to present onboarding flows, as well as ways to handle page state.

* An ``OnboardingPageView`` can be used to show a set of pages in a horizontal page view.
* An ``OnboardingSlideshow`` can be used to show a set of pages in a slideshow that auto-slides forward.
* An ``OnboardingScreen`` can be used to wrap any onboarding flow in a frame with additional controls.
* An ``OnboardingPageState`` can be used to manage page state for all views.

All views support all major Apple platforms (iOS, macOS, tvOS, watchOS & visionOS).

See the online [getting started guide][Getting-Started] for more information.

## Documentation

The online [documentation][Documentation] has more information, articles, code examples, etc.

## Demo Application

The `Demo` folder has an app that lets you explore the library.

## Contact

Feel free to reach out if you have questions or if you want to contribute in any way:

* Website: [danielsaidi.com][Website]
* E-mail: [daniel.saidi@gmail.com][Email]
* Bluesky: [@danielsaidi@bsky.social][Bluesky]
* Mastodon: [@danielsaidi@mastodon.social][Mastodon]

## License

OnboardingKit is available under the MIT license. See the [LICENSE][License] file for more info.

[Email]: mailto:daniel.saidi@gmail.com
[Website]: https://www.danielsaidi.com
[GitHub]: https://www.github.com/danielsaidi
[OpenSource]: https://danielsaidi.com/opensource
[Sponsors]: https://github.com/sponsors/danielsaidi

[Bluesky]: https://bsky.app/profile/danielsaidi.bsky.social
[Mastodon]: https://mastodon.social/@danielsaidi
[Twitter]: https://twitter.com/danielsaidi

[Documentation]: https://danielsaidi.github.io/OnboardingKit
[Getting-Started]: https://danielsaidi.github.io/OnboardingKit/documentation/onboardingkit/getting-started
[License]: https://github.com/danielsaidi/OnboardingKit/blob/master/LICENSE