{"id":3313,"url":"https://github.com/metabolist/metatext-apns","last_synced_at":"2026-05-14T09:10:05.563Z","repository":{"id":128472401,"uuid":"286399665","full_name":"metabolist/metatext-apns","owner":"metabolist","description":"A service for relaying WebPush notifications to Apple's push notification service","archived":false,"fork":false,"pushed_at":"2022-11-12T06:49:30.000Z","size":48,"stargazers_count":27,"open_issues_count":0,"forks_count":8,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-20T20:27:57.441Z","etag":null,"topics":["apns","mastodon","ruby","sinatra","webpush"],"latest_commit_sha":null,"homepage":"https://metabolist.org/metatext","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/metabolist.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-08-10T06:55:12.000Z","updated_at":"2025-08-13T14:26:28.000Z","dependencies_parsed_at":"2023-07-07T10:31:56.321Z","dependency_job_id":null,"html_url":"https://github.com/metabolist/metatext-apns","commit_stats":{"total_commits":22,"total_committers":1,"mean_commits":22.0,"dds":0.0,"last_synced_commit":"c456523b011f203637a25b43c1f9ff6be273c4fe"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/metabolist/metatext-apns","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabolist%2Fmetatext-apns","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabolist%2Fmetatext-apns/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabolist%2Fmetatext-apns/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabolist%2Fmetatext-apns/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/metabolist","download_url":"https://codeload.github.com/metabolist/metatext-apns/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabolist%2Fmetatext-apns/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28117484,"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","status":"online","status_checked_at":"2025-12-29T02:00:07.021Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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"}},"owner":{"login":"metabolist","name":"Metabolist","uuid":"56991074","kind":"organization","description":"","email":"info@metabolist.org","website":"https://metabolist.org","location":"Online","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/56991074?v=4","repositories_count":6,"last_synced_at":"2026-03-10T23:29:50.518Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/metabolist","funding_links":[],"total_stars":755,"followers":21,"following":0,"created_at":"2022-11-18T07:59:25.309Z","updated_at":"2026-03-10T23:29:50.518Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/metabolist","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/metabolist/repositories"},"packages":[],"commits":{"id":1256178,"full_name":"metabolist/metatext-apns","default_branch":"main","total_commits":22,"total_committers":1,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":22.0,"dds":0.0,"past_year_total_commits":0,"past_year_total_committers":0,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":0.0,"past_year_dds":0.0,"last_synced_at":"2026-01-07T11:30:16.559Z","last_synced_commit":"c456523b011f203637a25b43c1f9ff6be273c4fe","created_at":"2023-04-05T16:00:09.350Z","updated_at":"2026-01-07T11:30:16.535Z","committers":[{"name":"Justin Mazzocchi","email":"2831158+jzzocc","login":"jzzocc","count":22}],"past_year_committers":[],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabolist%2Fmetatext-apns/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-01-08T01:00:21.143Z","repositories_count":6162452,"commits_count":932507766,"contributors_count":36262541,"owners_count":1136386,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues":{"table":{"full_name":"metabolist/metatext-apns","html_url":"https://github.com/metabolist/metatext-apns","last_synced_at":"2025-12-06T04:00:17.469Z","status":null,"issues_count":0,"pull_requests_count":1,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":21.0,"issues_closed_count":0,"pull_requests_closed_count":1,"pull_request_authors_count":1,"issue_authors_count":0,"avg_comments_per_issue":null,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":1,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":21.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"created_at":"2023-05-09T10:43:01.816Z","updated_at":"2025-12-06T04:00:17.484Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabolist%2Fmetatext-apns","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/metabolist%2Fmetatext-apns/issues","issue_labels_count":{"table":{}},"pull_request_labels_count":{"table":{}},"issue_author_associations_count":{"table":{}},"pull_request_author_associations_count":{"table":{"NONE":1}},"issue_authors":{"table":{}},"pull_request_authors":{"table":{"GroundedBound":1}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-12-23T00:00:36.934Z","repositories_count":12388140,"issues_count":35790062,"pull_requests_count":117494514,"authors_count":11069451,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"}},"past_year_issue_labels_count":{"table":{}},"past_year_pull_request_labels_count":{"table":{}},"past_year_issue_author_associations_count":{"table":{}},"past_year_pull_request_author_associations_count":{"table":{"NONE":1}},"past_year_issue_authors":{"table":{}},"past_year_pull_request_authors":{"table":{"GroundedBound":1}},"maintainers":[],"active_maintainers":[]}},"events":{"total":{"PullRequestEvent":2},"last_year":{"PullRequestEvent":2}},"keywords":["apns","mastodon","ruby","sinatra","webpush"],"dependencies":[{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2023-07-07T10:31:55.797Z","updated_at":"2023-07-07T10:31:55.797Z","repository_link":"https://github.com/metabolist/metatext-apns/blob/main/Gemfile","dependencies":[{"id":11186994761,"package_name":"apnotic","ecosystem":"rubygems","requirements":"~\u003e 1.7.0","direct":true,"kind":"runtime","optional":false},{"id":11186994900,"package_name":"dotenv","ecosystem":"rubygems","requirements":"~\u003e 2.8.1","direct":true,"kind":"runtime","optional":false},{"id":11186994901,"package_name":"puma","ecosystem":"rubygems","requirements":"~\u003e 6.0.0","direct":true,"kind":"runtime","optional":false},{"id":11186994902,"package_name":"sinatra","ecosystem":"rubygems","requirements":"~\u003e 3.0.3","direct":true,"kind":"runtime","optional":false},{"id":11186994903,"package_name":"rubocop","ecosystem":"rubygems","requirements":"~\u003e 1.38.0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"rubygems","filepath":"Gemfile.lock","sha":null,"kind":"lockfile","created_at":"2023-07-07T10:31:55.911Z","updated_at":"2023-07-07T10:31:55.911Z","repository_link":"https://github.com/metabolist/metatext-apns/blob/main/Gemfile.lock","dependencies":[{"id":11186995250,"package_name":"apnotic","ecosystem":"rubygems","requirements":"1.7.0","direct":false,"kind":"runtime","optional":false},{"id":11186995251,"package_name":"ast","ecosystem":"rubygems","requirements":"2.4.2","direct":false,"kind":"runtime","optional":false},{"id":11186995252,"package_name":"connection_pool","ecosystem":"rubygems","requirements":"2.3.0","direct":false,"kind":"runtime","optional":false},{"id":11186995253,"package_name":"dotenv","ecosystem":"rubygems","requirements":"2.8.1","direct":false,"kind":"runtime","optional":false},{"id":11186995254,"package_name":"http-2","ecosystem":"rubygems","requirements":"0.11.0","direct":false,"kind":"runtime","optional":false},{"id":11186996172,"package_name":"json","ecosystem":"rubygems","requirements":"2.6.2","direct":false,"kind":"runtime","optional":false},{"id":11186996175,"package_name":"mustermann","ecosystem":"rubygems","requirements":"3.0.0","direct":false,"kind":"runtime","optional":false},{"id":11186996178,"package_name":"net-http2","ecosystem":"rubygems","requirements":"0.18.4","direct":false,"kind":"runtime","optional":false},{"id":11186996580,"package_name":"nio4r","ecosystem":"rubygems","requirements":"2.5.8","direct":false,"kind":"runtime","optional":false},{"id":11186996581,"package_name":"parallel","ecosystem":"rubygems","requirements":"1.22.1","direct":false,"kind":"runtime","optional":false},{"id":11186996582,"package_name":"parser","ecosystem":"rubygems","requirements":"3.1.2.1","direct":false,"kind":"runtime","optional":false},{"id":11186996583,"package_name":"puma","ecosystem":"rubygems","requirements":"6.0.0","direct":false,"kind":"runtime","optional":false},{"id":11186996584,"package_name":"rack","ecosystem":"rubygems","requirements":"2.2.4","direct":false,"kind":"runtime","optional":false},{"id":11186996585,"package_name":"rack-protection","ecosystem":"rubygems","requirements":"3.0.3","direct":false,"kind":"runtime","optional":false},{"id":11186996586,"package_name":"rainbow","ecosystem":"rubygems","requirements":"3.1.1","direct":false,"kind":"runtime","optional":false},{"id":11186996587,"package_name":"regexp_parser","ecosystem":"rubygems","requirements":"2.6.0","direct":false,"kind":"runtime","optional":false},{"id":11186996588,"package_name":"rexml","ecosystem":"rubygems","requirements":"3.2.5","direct":false,"kind":"runtime","optional":false},{"id":11186996589,"package_name":"rubocop","ecosystem":"rubygems","requirements":"1.38.0","direct":false,"kind":"runtime","optional":false},{"id":11186996590,"package_name":"rubocop-ast","ecosystem":"rubygems","requirements":"1.23.0","direct":false,"kind":"runtime","optional":false},{"id":11186996591,"package_name":"ruby-progressbar","ecosystem":"rubygems","requirements":"1.11.0","direct":false,"kind":"runtime","optional":false},{"id":11186996592,"package_name":"ruby2_keywords","ecosystem":"rubygems","requirements":"0.0.5","direct":false,"kind":"runtime","optional":false},{"id":11186996593,"package_name":"sinatra","ecosystem":"rubygems","requirements":"3.0.3","direct":false,"kind":"runtime","optional":false},{"id":11186996594,"package_name":"tilt","ecosystem":"rubygems","requirements":"2.0.11","direct":false,"kind":"runtime","optional":false},{"id":11186996595,"package_name":"unicode-display_width","ecosystem":"rubygems","requirements":"2.3.0","direct":false,"kind":"runtime","optional":false},{"id":11186996596,"package_name":"bundler","ecosystem":"rubygems","requirements":"2.3.25","direct":false,"kind":"runtime","optional":false}]}],"score":3.295836866004329,"created_at":"2023-04-05T15:48:14.795Z","updated_at":"2026-05-14T09:10:05.563Z","avatar_url":"https://github.com/metabolist.png","language":"Ruby","codemeta":null,"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/3313","html_url":"https://summary.ecosyste.ms/projects/3313"}