DeckKit
is a tiny SwiftUI library that can help you create deck-based apps.
With DeckKit
, you can present any model that implements CardItem
as cards. It can look like this:
I will add a stunning (well...) logo and improve the documentation after the library gets 50 stars or the first external issue. Until then, create issues or reach out to me if you need help.
https://github.com/danielsaidi/DeckKit.git
pod DeckKit
I will add better documentation if anyone starts using this library, but basically it works like this:
CardItem
is a protocol that inheritsIdentifiable
andEquatable
- A
Deck
can be created with anyCardItem
collection.
Decks can be used as plain data objects, but can also bre presented with SwiftUI.
A Deck
can be presented in many ways, including these two built in views:
StackedDeck
stacks cards on top of eachother and lets the user swipe cards off the top.HorizontalDeck
presents cards in a horizontal list.
You can easily build your own Deck
-based views as well, using plain SwiftUI.
This repo contains a very basic, universal demo app that runs on iOS 14 and macOS 11.
Just open the Demo
project and run the app on either platform.
The library could run on tvOS as well, but the demo currently has no tvOS app.
This library wouldn't have been made without this amazing card tutorial.
Feel free to reach out if you have questions or if you want to contribute in any way:
- E-mail: daniel.saidi@gmail.com
- Twitter: @danielsaidi
- Web site: danielsaidi.com
DeckKit is available under the MIT license. See LICENSE file for more info.