Fabulaとは
Fabulaアプリは、SwiftUIを学習して作成した小さな単位プロジェクトを集めて共有するサービスです。 学習を通じて作られた結果物をgithubにオープンソースとして共有しています。
また、FabulaItemsProviderというプロジェクトを通じて、複数の開発者が参加して、自分のコードをFabulaサービスを通じて配布することができます。 SwiftUIを学ぶ多くの開発者に情報を提供し、多数の開発者が参加することで、自分の開発スキルも向上させるための良い方法です。
FabulaItemsProviderはオープンソースです。 自分が開発したコードをPR(Pull Request)を通じて提供し、オペレータは最小限のエラーのみを除去してApp Storeに配布します。
Fabulaプロジェクトのワークフローは次のとおりです。
簡単に説明すると、FabulaItemsProvider プロジェクトを fork し、item になるコードを作成およびテストした後、PR (Pull Request) 要求します。 これでFabulaアプリに自分のアイテムが配布されるプロセスは終わりです。 その後、オペレータはPRされたプロジェクトでエラーを確認し、展開のためにmergeを実行します。
その後、App StoreでFabulaアプリが更新されたら、自分のコードが配布されていることを確認できます。 単純なコードも良いです。 あなたが開発した簡単なコードは、多くのジュニア開発者に役立ちます。
Fabulaプロジェクトを通じてオープンソースで配布されたライブラリは以下のようなものがあります。
-
UnsplashのAPIを活用したSwiftUI用のライブラリです。
Sortの基準に基づいてページングと写真検索機能を提供します。
https://github.com/jasudev/UnsplashProvider -
iOS / macOSでサポートされているライブラリが見つからなかったので作成しました。
特定のビューを Zoomable コンテナで包んだ形で実装します。 SDWebimageSwiftUIを利用したurlのイメージを zoom in/out する機能も提供します。
https://github.com/jasudev/Zoomable -
スクロールに応じて各ビュー内でタイムライン形式の値を自動的に処理するライブラリです。 スクロール位置に応じて、各ビューの値が0.0から1.0の間の値を渡すことによってアニメーションを処理できます。
https://github.com/jasudev/Scroller -
Textにアニメーションを処理できるライブラリです。 Generic Effectオブジェクトを渡すことで、さまざまなアニメーションを処理できます。 もちろんカスタムアニメーション効果も簡単に作れます。
https://github.com/jasudev/AnimateText -
OS/macOS で使用できる Lottie ライブラリです。
https://github.com/jasudev/LottieUI -
Bottom Sheetは下部のみをサポートしますが、このライブラリは左、右、上、下をすべてサポートするUIライブラリです。 iOS/macOSの両方をサポートします。
https://github.com/jasudev/AxisSheet -
スターポイントを処理できるライブラリです。 水平/垂直方向をサポートし、Viewプロトコルに準拠したすべてのビューをデザインに適用できます。
https://github.com/jasudev/AxisRatingBar
Fabulaプロジェクトは、iOS / macOSを一緒にサポートできるSwiftUIコードを目指しています。
一緒に参加してみませんか?