{"id":17046142,"url":"https://github.com/hisaac/pasteboardpublisher","last_synced_at":"2025-07-04T08:34:10.115Z","repository":{"id":114629810,"uuid":"344866059","full_name":"hisaac/PasteboardPublisher","owner":"hisaac","description":"A custom Combine publisher for NSPasteboard (Currently a work-in-progress)","archived":false,"fork":false,"pushed_at":"2022-12-05T17:46:24.000Z","size":20,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-23T03:16:38.110Z","etag":null,"topics":["combine","combine-framework","nspasteboard","pasteboard","spm","swift","swift-package","swift-package-manager"],"latest_commit_sha":null,"homepage":"","language":"Swift","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/hisaac.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":"2021-03-05T16:18:43.000Z","updated_at":"2022-12-05T17:44:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"cb88593b-a39b-4a18-bbb3-efc7c1f19135","html_url":"https://github.com/hisaac/PasteboardPublisher","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/hisaac/PasteboardPublisher","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hisaac%2FPasteboardPublisher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hisaac%2FPasteboardPublisher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hisaac%2FPasteboardPublisher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hisaac%2FPasteboardPublisher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hisaac","download_url":"https://codeload.github.com/hisaac/PasteboardPublisher/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hisaac%2FPasteboardPublisher/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263476162,"owners_count":23472529,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["combine","combine-framework","nspasteboard","pasteboard","spm","swift","swift-package","swift-package-manager"],"created_at":"2024-10-14T09:45:26.489Z","updated_at":"2025-07-04T08:34:09.914Z","avatar_url":"https://github.com/hisaac.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PasteboardPublisher\n\nPasteboardPublisher is a simple library that adds a Combine publisher to AppKit's `NSPasteboard` class.\n\nI created this because there is currently no way to \"subscribe\" to changes to an `NSPasteboard`, so it must be done by repeatedly polling the pasteboard's `changeCount`. This library just abstracts that away, and adds Combine compatability. I used this library in my pasteboard filtering app, [Plain Pasta](https://github.com/hisaac/PlainPasta), to great success.\n\nI used many articles to build this library, but the one that finally connected the dots for me was [\u003ccite\u003eCreating a custom Combine Publisher to extend UIKit\u003c/cite\u003e](https://www.avanderlee.com/swift/custom-combine-publisher/) by [Antoine van der Lee](https://www.avanderlee.com/about/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhisaac%2Fpasteboardpublisher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhisaac%2Fpasteboardpublisher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhisaac%2Fpasteboardpublisher/lists"}