https://github.com/silkodenis/swiftui-redux-tmdb-app
A SwiftUI app demonstrating a unidirectional data flow with Combine Networking, Combine Store, and Navigation Coordinator packages, integrating with the TMDB API.
https://github.com/silkodenis/swiftui-redux-tmdb-app
api-client combine ios-app redux swiftui unidirectional-data-flow
Last synced: 4 months ago
JSON representation
A SwiftUI app demonstrating a unidirectional data flow with Combine Networking, Combine Store, and Navigation Coordinator packages, integrating with the TMDB API.
- Host: GitHub
- URL: https://github.com/silkodenis/swiftui-redux-tmdb-app
- Owner: silkodenis
- License: apache-2.0
- Created: 2024-09-06T11:09:15.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-09-12T12:39:07.000Z (9 months ago)
- Last Synced: 2025-01-31T10:06:19.388Z (4 months ago)
- Topics: api-client, combine, ios-app, redux, swiftui, unidirectional-data-flow
- Language: Swift
- Homepage:
- Size: 2.11 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# SwiftUI TMDB App
![]()
![]()
![]()
![]()
This is a demo app showcasing some of my Swift packages: **Combine Networking**, **Combine Store**, and **Navigation Coordinator**. The app leverages a unidirectional data flow approach with data-driven side effects, providing a reactive and declarative way to build iOS applications.
## Key Components
- [Combine Store](https://github.com/silkodenis/swift-combine-store): Manages application state and actions, ensuring predictable state transitions.
- [Combine Networking](https://github.com/silkodenis/swift-combine-networking): Handles all network requests to the MoviesDB API.
- [Navigation Coordinator](https://github.com/silkodenis/swiftui-navigation-coordinator): Manages navigation within the app, coordinating between different views.## Acknowledgments
Special thanks to [Oleksii Demedetskyi](https://github.com/oleksii-demedetskyi) for providing inspiration and some concepts such as graph system over normalized state and view connector, which were adapted in this project. These concepts were originally presented in [SwiftUI-UDF-Demo](https://github.com/oleksii-demedetskyi/SwiftUI-UDF-Demo).
## License
This project is licensed under the [Apache License, Version 2.0](LICENSE).