{"id":357279,"url":"https://github.com/ropensci/spiro/","last_synced_at":"2026-06-21T23:30:41.829Z","repository":{"id":43172457,"uuid":"354232342","full_name":"ropensci/spiro","owner":"ropensci","description":"Work with data from cardiopulmonary exercise testing","archived":false,"fork":false,"pushed_at":"2025-09-08T12:17:27.000Z","size":6447,"stargazers_count":15,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-04-06T10:11:07.961Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://docs.ropensci.org/spiro/","language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ropensci.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":"codemeta.json","zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-04-03T07:50:40.000Z","updated_at":"2025-09-19T12:39:05.000Z","dependencies_parsed_at":"2024-06-07T10:12:03.000Z","dependency_job_id":"55026e83-2a70-4b61-9d00-416e0b6a1cec","html_url":"https://github.com/ropensci/spiro","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/ropensci/spiro","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ropensci%2Fspiro","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ropensci%2Fspiro/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ropensci%2Fspiro/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ropensci%2Fspiro/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ropensci","download_url":"https://codeload.github.com/ropensci/spiro/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ropensci%2Fspiro/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31799411,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T11:13:53.975Z","status":"ssl_error","status_checked_at":"2026-04-14T11:13:53.299Z","response_time":153,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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":{"login":"ropensci","name":"rOpenSci","uuid":"1200269","kind":"organization","description":"","email":"info@ropensci.org","website":"https://ropensci.org/","location":"Berkeley, CA","twitter":"rOpenSci","company":null,"icon_url":"https://avatars.githubusercontent.com/u/1200269?v=4","repositories_count":307,"last_synced_at":"2023-03-10T20:30:59.242Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/ropensci","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-02T19:23:08.224Z","updated_at":"2023-03-10T20:30:59.305Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ropensci","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ropensci/repositories"},"packages":[],"commits":{"id":726292,"full_name":"ropensci/spiro","default_branch":"main","total_commits":382,"total_committers":2,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":191.0,"dds":0.002617801047120394,"past_year_total_commits":2,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":2.0,"past_year_dds":0.0,"last_synced_at":"2026-04-11T15:14:17.515Z","last_synced_commit":"38245274c8a77a6238d420c9f60e2cf36bbb29d1","created_at":"2023-03-09T13:16:51.132Z","updated_at":"2026-04-11T15:14:17.439Z","committers":[{"name":"Simon Nolte","email":"81624911+smnnlt","login":"smnnlt","count":381},{"name":"Maëlle Salmon","email":"maelle.salmon@yahoo.se","login":"maelle","count":1}],"past_year_committers":[{"name":"Simon Nolte","email":"simonnolte@googlemail.com","login":"smnnlt","count":2}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/ropensci%2Fspiro/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-14T00:00:07.982Z","repositories_count":6213265,"commits_count":903360068,"contributors_count":34926393,"owners_count":1144290,"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":"ropensci/spiro","html_url":"https://github.com/ropensci/spiro","last_synced_at":"2025-09-09T01:11:28.776Z","status":"active","issues_count":1,"pull_requests_count":17,"avg_time_to_close_issue":3062769.0,"avg_time_to_close_pull_request":290302.64705882355,"issues_closed_count":1,"pull_requests_closed_count":17,"pull_request_authors_count":2,"issue_authors_count":1,"avg_comments_per_issue":1.0,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":17,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":5,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":790.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":5,"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":5,"created_at":"2023-05-10T23:07:35.742Z","updated_at":"2025-09-09T01:11:28.777Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/ropensci%2Fspiro","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/ropensci%2Fspiro/issues","issue_labels_count":{"table":{}},"pull_request_labels_count":{"table":{}},"issue_author_associations_count":{"table":{"NONE":1}},"pull_request_author_associations_count":{"table":{"COLLABORATOR":15,"MEMBER":2}},"issue_authors":{"table":{"thomasp85":1}},"pull_request_authors":{"table":{"smnnlt":15,"maelle":2}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-06T00:00:09.270Z","repositories_count":14102549,"issues_count":34428069,"pull_requests_count":112383217,"authors_count":11227359,"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":{"COLLABORATOR":2}},"past_year_issue_authors":{"table":{}},"past_year_pull_request_authors":{"table":{"smnnlt":2}},"maintainers":[{"table":{"login":"smnnlt","count":15,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/smnnlt"}},{"table":{"login":"maelle","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/maelle"}}],"active_maintainers":[{"table":{"login":"smnnlt","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/smnnlt"}}]}},"events":{"total":{"ReleaseEvent":2,"DeleteEvent":2,"PullRequestEvent":5,"WatchEvent":2,"PushEvent":6,"CreateEvent":3},"last_year":{"DeleteEvent":1,"PullRequestEvent":3,"PushEvent":2,"CreateEvent":1}},"keywords":[],"dependencies":[{"ecosystem":"cran","filepath":"DESCRIPTION","sha":null,"kind":"manifest","created_at":"2022-08-12T10:20:58.640Z","updated_at":"2022-08-12T10:20:58.640Z","repository_link":"https://github.com/ropensci/spiro/blob/main/DESCRIPTION","dependencies":[{"id":1315292588,"package_name":"ggplot2","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":1315292589,"package_name":"xml2","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":1315292590,"package_name":"readxl","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":1315292591,"package_name":"knitr","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":1315292592,"package_name":"cowplot","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":1315292593,"package_name":"digest","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":1315292594,"package_name":"signal","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":1315292595,"package_name":"testthat","ecosystem":"cran","requirements":"\u003e= 3.0.0","direct":true,"kind":"suggests","optional":false},{"id":1315292596,"package_name":"rmarkdown","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":1315292597,"package_name":"ggborderline","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/R-CMD-check.yaml","sha":null,"kind":"manifest","created_at":"2023-02-01T03:30:25.139Z","updated_at":"2023-02-01T03:30:25.139Z","repository_link":"https://github.com/ropensci/spiro/blob/main/.github/workflows/R-CMD-check.yaml","dependencies":[{"id":7288210371,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7288210372,"package_name":"r-lib/actions/setup-pandoc","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7288210373,"package_name":"r-lib/actions/setup-r","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7288210374,"package_name":"r-lib/actions/setup-r-dependencies","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7288210375,"package_name":"r-lib/actions/check-r-package","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/test-coverage.yaml","sha":null,"kind":"manifest","created_at":"2023-02-01T03:30:25.204Z","updated_at":"2023-02-01T03:30:25.204Z","repository_link":"https://github.com/ropensci/spiro/blob/main/.github/workflows/test-coverage.yaml","dependencies":[{"id":7288210578,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7288210579,"package_name":"r-lib/actions/setup-r","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7288210580,"package_name":"r-lib/actions/setup-r-dependencies","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7288210581,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]}],"score":3.4011973816621555,"created_at":"2025-04-11T10:19:24.812Z","updated_at":"2026-06-21T23:30:41.830Z","avatar_url":"https://github.com/ropensci.png","language":"R","codemeta":{"@context":"https://doi.org/10.5063/schema/codemeta-2.0","@type":"SoftwareSourceCode","identifier":"spiro","description":"Import, process, summarize and visualize raw data from metabolic carts. See Robergs, Dwyer, and Astorino (2010) \u003cdoi:10.2165/11319670-000000000-00000\u003e for more details on data processing. ","name":"spiro: Manage Data from Cardiopulmonary Exercise Testing","relatedLink":["https://docs.ropensci.org/spiro/","https://CRAN.R-project.org/package=spiro"],"codeRepository":"https://github.com/ropensci/spiro","issueTracker":"https://github.com/ropensci/spiro/issues","license":"https://spdx.org/licenses/MIT","version":"0.2.3.9000","programmingLanguage":{"@type":"ComputerLanguage","name":"R","url":"https://r-project.org"},"runtimePlatform":"R version 4.4.0 (2024-04-24 ucrt)","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"author":[{"@type":"Person","givenName":"Simon","familyName":"Nolte","email":"s.nolte@dshs-koeln.de","@id":"https://orcid.org/0000-0003-1643-1860"}],"maintainer":[{"@type":"Person","givenName":"Simon","familyName":"Nolte","email":"s.nolte@dshs-koeln.de","@id":"https://orcid.org/0000-0003-1643-1860"}],"softwareSuggestions":[{"@type":"SoftwareApplication","identifier":"testthat","name":"testthat","version":"\u003e= 3.0.0","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=testthat"},{"@type":"SoftwareApplication","identifier":"vdiffr","name":"vdiffr","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=vdiffr"},{"@type":"SoftwareApplication","identifier":"rmarkdown","name":"rmarkdown","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=rmarkdown"},{"@type":"SoftwareApplication","identifier":"ggborderline","name":"ggborderline","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=ggborderline"}],"softwareRequirements":{"1":{"@type":"SoftwareApplication","identifier":"ggplot2","name":"ggplot2","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=ggplot2"},"2":{"@type":"SoftwareApplication","identifier":"xml2","name":"xml2","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=xml2"},"3":{"@type":"SoftwareApplication","identifier":"readxl","name":"readxl","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=readxl"},"4":{"@type":"SoftwareApplication","identifier":"knitr","name":"knitr","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=knitr"},"5":{"@type":"SoftwareApplication","identifier":"cowplot","name":"cowplot","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=cowplot"},"6":{"@type":"SoftwareApplication","identifier":"digest","name":"digest","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=digest"},"7":{"@type":"SoftwareApplication","identifier":"signal","name":"signal","provider":{"@id":"https://cran.r-project.org","@type":"Organization","name":"Comprehensive R Archive Network (CRAN)","url":"https://cran.r-project.org"},"sameAs":"https://CRAN.R-project.org/package=signal"},"SystemRequirements":null},"fileSize":"6711.436KB","citation":[{"@type":"ScholarlyArticle","datePublished":"2023","author":[{"@type":"Person","givenName":"Simon","familyName":"Nolte"}],"name":"spiro: An R package for analyzing data from cardiopulmonary exercise testing","identifier":"10.21105/joss.05089","url":"https://joss.theoj.org/papers/10.21105/joss.05089","pagination":"5089","@id":"https://doi.org/10.21105/joss.05089","sameAs":"https://doi.org/10.21105/joss.05089","isPartOf":{"@type":"PublicationIssue","issueNumber":"81","datePublished":"2023","isPartOf":{"@type":["PublicationVolume","Periodical"],"volumeNumber":"8","name":"Journal of Open Source Software"}}}],"releaseNotes":"https://github.com/ropensci/spiro/blob/master/NEWS.md","readme":"https://github.com/ropensci/spiro/blob/main/README.md","contIntegration":["https://github.com/ropensci/spiro/actions","https://app.codecov.io/gh/ropensci/spiro"],"developmentStatus":"https://www.repostatus.org/#active","review":{"@type":"Review","url":"https://github.com/ropensci/software-review/issues/541","provider":"https://ropensci.org"}},"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/357279","html_url":"https://summary.ecosyste.ms/projects/357279"}