https://github.com/marty-suzuki/GitHubSearchWithSwiftUI
SwiftUI and Combine based GitHubSearch example.
https://github.com/marty-suzuki/GitHubSearchWithSwiftUI
combine swift swiftui wwdc
Last synced: 13 days ago
JSON representation
SwiftUI and Combine based GitHubSearch example.
- Host: GitHub
- URL: https://github.com/marty-suzuki/GitHubSearchWithSwiftUI
- Owner: marty-suzuki
- License: mit
- Created: 2019-06-04T15:31:29.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2019-08-19T05:40:06.000Z (over 5 years ago)
- Last Synced: 2025-03-23T02:22:42.453Z (23 days ago)
- Topics: combine, swift, swiftui, wwdc
- Language: Swift
- Homepage:
- Size: 266 KB
- Stars: 204
- Watchers: 6
- Forks: 16
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-swiftui - marty-suzuki/GitHubSearchWithSwiftUI - SwiftUI and Combine based GitHubSearch example. (Samples)
- fucking-open-source-ios-apps - GitHubSearchWithSwiftUI
- fucking-about-SwiftUI - GitHubSearchWithSwiftUI
- awesome-swiftui - SwiftUI and Combine based GitHubSearch example - suzuki (🛠Examples / Open Source Apps)
README
# GitHubSearchWithSwiftUI
GitHubSearchWithSwiftUI is an example that using [Combine](https://developer.apple.com/documentation/combine) and [SwiftUI
](https://developer.apple.com/xcode/swiftui/)
| Receive Results | Receive Error | SafariViewController |
| :-: | :-: | :-: |
|  |  | [ricemill-sample](https://github.com/marty-suzuki/GitHubSearchWithSwiftUI/blob/ricemill-sample/GitHubSearchWithSwiftUI/View/RepositoryListViewModel.swift#L14-L90) branch is a sample which used [Ricemill](https://github.com/marty-suzuki/Ricemill) (that is Unidirectional Input / Output framework with Combine and SwiftUI).
## TODO
- [x] Search with TextField's text
- [x] Reflect API responses to List
- [x] Separate API access from BindableObject
- [x] Use Combine with API access
- [x] Reflect responses in MainThread via Combine## Requirements
- Xcode 11 Beta 5
- Swift 5.1
- iOS 13 Beta## References
- https://developer.apple.com/tutorials/swiftui/tutorials
- https://developer.apple.com/documentation/swiftui
- https://developer.apple.com/documentation/combine
- https://developer.apple.com/design/human-interface-guidelines/sf-symbols/overview/
- [Data Flow Through SwiftUI](https://developer.apple.com/videos/play/wwdc2019/226)
- [Building Custom Views with SwiftUI](https://developer.apple.com/videos/play/wwdc2019/237)
- [Combine in Practice](https://developer.apple.com/videos/play/wwdc2019/721)
- [Introducing Combine](https://developer.apple.com/videos/play/wwdc2019/722)
- [Introducing Combine and Advances in Foundation](https://developer.apple.com/videos/play/wwdc2019/711)## License
GitHubSearchWithSwiftUI is under MIT license. See the [LICENSE](./LICENSE) file for more info.