{"id":19824720,"url":"https://github.com/combinecommunity/awesome-combine","last_synced_at":"2026-01-27T11:02:32.708Z","repository":{"id":37493252,"uuid":"217109695","full_name":"CombineCommunity/awesome-combine","owner":"CombineCommunity","description":"A curated list of awesome Combine tutorials, libraries, sessions and articles. ","archived":false,"fork":false,"pushed_at":"2024-06-08T19:10:33.000Z","size":136,"stargazers_count":213,"open_issues_count":1,"forks_count":16,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-11-10T01:01:44.793Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CombineCommunity.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-10-23T16:59:53.000Z","updated_at":"2025-08-16T01:45:26.000Z","dependencies_parsed_at":"2024-06-28T04:03:08.271Z","dependency_job_id":"8c7e0798-e546-4ffa-a3c9-58f50700affe","html_url":"https://github.com/CombineCommunity/awesome-combine","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/CombineCommunity/awesome-combine","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CombineCommunity%2Fawesome-combine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CombineCommunity%2Fawesome-combine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CombineCommunity%2Fawesome-combine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CombineCommunity%2Fawesome-combine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CombineCommunity","download_url":"https://codeload.github.com/CombineCommunity/awesome-combine/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CombineCommunity%2Fawesome-combine/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28812367,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-27T07:41:26.337Z","status":"ssl_error","status_checked_at":"2026-01-27T07:41:08.776Z","response_time":168,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-12T11:05:36.052Z","updated_at":"2026-01-27T11:02:32.693Z","avatar_url":"https://github.com/CombineCommunity.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Awesome Combine\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://github.com/CombineCommunity/awesome-combine/raw/master/Resources/logo.png\" width=\"45%\"\u003e\n\u003c/p\u003e\n\nA curated list of awesome Combine tutorials, libraries, videos and books.\n\n## Contributing\n\nFound a Combine tutorial or snippet that you think is *awesome*?\nSend a pull request, and we'll happily merge it!\n\n## Index\n\n  - [Links, Tutorials \u0026 Articles](#links-tutorials-articles)\n  - [Videos](#videos)\n  - [Libraries](#libraries)\n  - [Books](#books)\n  - [Tools](#tools)\n\n## Content\n\n### Links, Tutorials \u0026 Articles\n\n* [Combine101](https://github.com/learncombine/Combine101) and [HackingCombine](https://github.com/learncombine/HackingCombine) by Scott Gardner\n* [TryCombine](http://trycombine.com) by Marin Todorov\n* [Cocoa with Love](https://www.cocoawithlove.com/tags/combine.html) by Matt Gallagher\n* [SwiftLee](https://www.avanderlee.com/category/combine/) by Antoine van der Lee\n\n### Videos\n\n* [Getting Started with Combine, try! Swift NYC 2019](https://www.youtube.com/watch?v=fejmsuxoIvA) by Shai Mishali\n*  [Introducing Combine and Advances in Foundation](https://developer.apple.com/wwdc19/711) (WWDC 2019 Session 711)\n*  [Combine in Practice](https://developer.apple.com/wwdc19/721) (WWDC 2019 Session 721)\n*  [Advances in Networking](https://developer.apple.com/wwdc19/712) (WWDC 2019 Session 712)\n\n\n### Libraries\n\n* [CombineCocoa](http://github.com/CombineCommunity/CombineCocoa) - Combine publisher bridges for UIKit\n* [RxCombine](http://github.com/CombineCommunity/RxCombine) - Bi-directional type bridging between RxSwift and Apple's Combine framework\n* [CombineCloudKit](https://github.com/chris-araman/CombineCloudKit) - Swift Combine extensions for reactive CloudKit record processing\n* [CombineDataSources](http://github.com/CombineCommunity/CombineDataSources) - Table and collection view data sources for Combine\n* [CombineFeedback](https://github.com/sergdort/CombineFeedback) - Unidirectional reactive architecture using new Apple Combine framework\n* [Entwine](https://github.com/tcldr/Entwine) - Testing tools and utilities for Apple's Combine framework\n* [Harvest](https://github.com/inamiy/Harvest) - Combine + State Machine, inspired by Elm\n* [OpenCombine](https://github.com/broadwaylamb/OpenCombine) - Open source implementation of Apple's Combine framework for processing values over time\n* [CombineX](https://github.com/cx-org/CombineX) - Open source implementation for Apple's Combine\n\n### Books\n\n* [Combine: Asynchronous Programming with Swift](https://store.raywenderlich.com/products/combine-asynchronous-programming-with-swift) by [raywenderlich.com](https://raywenderlich.com)\n* [Using Combine](https://heckj.github.io/swiftui-notes/) by [Joseph Heck](https://github.com/heckj)\n* [Understanding Combine](https://www.apeth.com/UnderstandingCombine/toc.html) by [Matt Neuburg](https://github.com/mattneub)\n* [Practical Combine: An introduction to Combine with real examples](https://gumroad.com/l/practical-combine) by [Donny Wals](https://github.com/donnywals)\n* [Asynchronous Programming with SwiftUI and Combine](https://amzn.to/3HfDYW5) by [Peter Friese](https://github.com/peterfriese)\n\n### Tools\n\n* [Timelane](http://timelane.tools) - Visually profile your asynchronous code [free/oss]\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcombinecommunity%2Fawesome-combine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcombinecommunity%2Fawesome-combine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcombinecommunity%2Fawesome-combine/lists"}