{"id":12201933,"name":"class_interface","ecosystem":"rubygems","description":"Extends Ruby to support class interfaces","homepage":"https://github.com/magynhard/class_interface","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/magynhard/class_interface","keywords_array":[],"namespace":null,"versions_count":6,"first_release_published_at":"2019-03-14T19:28:12.739Z","latest_release_published_at":"2020-12-23T18:39:45.362Z","latest_release_number":"1.0.1","last_synced_at":"2026-03-24T21:17:17.996Z","created_at":"2025-10-07T02:05:32.400Z","updated_at":"2026-03-24T21:17:27.772Z","registry_url":"https://gem.coop/gems/class_interface","install_command":"gem install class_interface -s https://gem.coop","documentation_url":"http://www.rubydoc.info/gems/class_interface/","metadata":{"funding":null},"repo_metadata":{"id":62555750,"uuid":"173438926","full_name":"magynhard/class_interface","owner":"magynhard","description":"Ruby gem to provide an interface pattern for classes","archived":false,"fork":false,"pushed_at":"2023-05-08T18:49:41.000Z","size":21,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-11-30T10:20:17.762Z","etag":null,"topics":["class-interface","interface","interface-pattern","pattern","ruby","ruby-gem"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/magynhard.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}},"created_at":"2019-03-02T11:20:48.000Z","updated_at":"2023-05-08T18:49:46.000Z","dependencies_parsed_at":"2022-11-03T05:45:34.479Z","dependency_job_id":null,"html_url":"https://github.com/magynhard/class_interface","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/magynhard/class_interface","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/magynhard","download_url":"https://codeload.github.com/magynhard/class_interface/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30906115,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-24T21:08:37.630Z","status":"ssl_error","status_checked_at":"2026-03-24T21:07:59.166Z","response_time":106,"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"},"owner_record":{"login":"magynhard","name":"Matthäus J. N. Beyrle","uuid":"14541962","kind":"user","description":"","email":"","website":null,"location":"Germany","twitter":null,"company":"GROB-WERKE GmbH \u0026 Co. KG","icon_url":"https://avatars.githubusercontent.com/u/14541962?u=816b00b90e0df86ed61ed7704dfaad78dc0754fc\u0026v=4","repositories_count":52,"last_synced_at":"2025-10-25T12:39:42.681Z","metadata":{"has_sponsors_listing":true,"funding":{"github":["magynhard"]}},"html_url":"https://github.com/magynhard","funding_links":["https://github.com/sponsors/magynhard"],"total_stars":117,"followers":17,"following":8,"created_at":"2022-11-15T19:11:09.917Z","updated_at":"2025-10-25T12:39:42.682Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/magynhard","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/magynhard/repositories"},"tags":[{"name":"v1.0.1","sha":"8d90a9839cb72205f885437c3b5c0ed4e53ebfa0","kind":"tag","published_at":"2020-12-23T18:39:32.000Z","download_url":"https://codeload.github.com/magynhard/class_interface/tar.gz/v1.0.1","html_url":"https://github.com/magynhard/class_interface/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/magynhard/class_interface@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"37534459d587da05906c6383713d5c24b9102ffe","kind":"tag","published_at":"2020-12-22T19:54:47.000Z","download_url":"https://codeload.github.com/magynhard/class_interface/tar.gz/v1.0.0","html_url":"https://github.com/magynhard/class_interface/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/magynhard/class_interface@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v1.0.0/manifests"},{"name":"v0.1.3","sha":"0736d088f97a609ea1684e35857209d546dcbb27","kind":"tag","published_at":"2020-08-19T10:19:24.000Z","download_url":"https://codeload.github.com/magynhard/class_interface/tar.gz/v0.1.3","html_url":"https://github.com/magynhard/class_interface/releases/tag/v0.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/magynhard/class_interface@v0.1.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v0.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v0.1.3/manifests"},{"name":"v0.1.2","sha":"9241d2dcdcffbab1b936ab119c411bceef4e2d97","kind":"tag","published_at":"2020-03-02T09:54:26.000Z","download_url":"https://codeload.github.com/magynhard/class_interface/tar.gz/v0.1.2","html_url":"https://github.com/magynhard/class_interface/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/magynhard/class_interface@v0.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v0.1.2/manifests"},{"name":"v0.1.1","sha":"7ccad168c20af039a84f0e544e741b57db852e3c","kind":"tag","published_at":"2019-11-14T21:26:47.000Z","download_url":"https://codeload.github.com/magynhard/class_interface/tar.gz/v0.1.1","html_url":"https://github.com/magynhard/class_interface/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/magynhard/class_interface@v0.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"39a15166e01a9d2d706930989dd59f3c173378df","kind":"tag","published_at":"2019-03-14T19:27:59.000Z","download_url":"https://codeload.github.com/magynhard/class_interface/tar.gz/v0.1.0","html_url":"https://github.com/magynhard/class_interface/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/magynhard/class_interface@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-03-24T21:17:27.772Z","dependent_packages_count":0,"downloads":11869,"downloads_period":"total","dependent_repos_count":0,"rankings":{"downloads":42.82640079156957,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":14.275466930523189},"purl":"pkg:gem/class_interface?repository_url=https://gem.coop","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/class_interface","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/class_interface","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/class_interface/dependencies","status":null,"funding_links":["https://github.com/sponsors/magynhard"],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T14:34:05.690Z","issues_count":2,"pull_requests_count":0,"avg_time_to_close_issue":55698446.5,"avg_time_to_close_pull_request":null,"issues_closed_count":2,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":2,"avg_comments_per_issue":3.0,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/magynhard%2Fclass_interface/issues","maintainers":[],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/class_interface/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/class_interface/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/class_interface/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/class_interface/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/class_interface/codemeta","maintainers":[{"uuid":"114762","login":"magynhard","name":null,"email":null,"url":null,"packages_count":11,"html_url":"https://gem.coop/profiles/magynhard","role":null,"created_at":"2025-10-07T14:19:05.312Z","updated_at":"2025-10-07T14:19:05.312Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/magynhard/packages"}]}