{"id":304264,"name":"rTwig","description":"A method for correcting unrealistic cylinders in quantitative structure models (QSMs) due to technical limitations of current LiDAR sensor technology in forestry measurements.","url":"https://github.com/aidanmorales/rtwig","last_synced_at":"2026-06-08T10:30:18.954Z","repository":{"id":231595885,"uuid":"624919197","full_name":"aidanmorales/rTwig","owner":"aidanmorales","description":"R package for analyzing and correcting QSMs","archived":false,"fork":false,"pushed_at":"2026-05-07T21:48:05.000Z","size":75550,"stargazers_count":17,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-05-30T06:03:40.994Z","etag":null,"topics":["forestry","lidar","modeling","qsm","r","r-package","rcpp","rpackage"],"latest_commit_sha":null,"homepage":"https://aidanmorales.github.io/rTwig/","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/aidanmorales.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":null,"funding":null,"license":"LICENSE.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-04-07T15:32:10.000Z","updated_at":"2026-05-07T21:39:52.000Z","dependencies_parsed_at":"2026-05-22T02:02:02.424Z","dependency_job_id":null,"html_url":"https://github.com/aidanmorales/rTwig","commit_stats":{"total_commits":229,"total_committers":1,"mean_commits":229.0,"dds":0.0,"last_synced_commit":"723ba22185ab02d0788ae31b06e964c8065888e6"},"previous_names":["aidanmorales/rtwig"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/aidanmorales/rTwig","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33937661,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-05T02:00:06.157Z","response_time":120,"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":"aidanmorales","name":"Aidan Morales","uuid":"130003551","kind":"user","description":"Master's student in forestry specializing in remote sensing","email":"","website":null,"location":"Michigan, USA","twitter":null,"company":"Michigan State University","icon_url":"https://avatars.githubusercontent.com/u/130003551?u=200235370ee0a753a015edc4f9abb83c242ebb09\u0026v=4","repositories_count":1,"last_synced_at":"2024-04-04T20:28:56.156Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/aidanmorales","funding_links":[],"total_stars":0,"followers":0,"following":0,"created_at":"2024-04-04T20:28:56.585Z","updated_at":"2024-04-04T20:28:56.585Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales/repositories"},"packages":[{"id":11729205,"name":"github.com/aidanmorales/rtwig","ecosystem":"go","description":null,"homepage":null,"licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/aidanmorales/rtwig","keywords_array":[],"namespace":null,"versions_count":6,"first_release_published_at":"2024-04-04T21:37:11.000Z","latest_release_published_at":"2025-03-03T16:34:54.000Z","latest_release_number":"v1.4.0","last_synced_at":"2026-06-05T11:03:00.268Z","created_at":"2025-06-04T10:54:23.159Z","updated_at":"2026-06-05T11:03:00.269Z","registry_url":"https://pkg.go.dev/github.com/aidanmorales/rtwig","install_command":"go get github.com/aidanmorales/rtwig","documentation_url":"https://pkg.go.dev/github.com/aidanmorales/rtwig#section-documentation","metadata":{},"repo_metadata":{"id":231595885,"uuid":"624919197","full_name":"aidanmorales/rTwig","owner":"aidanmorales","description":"R package for analyzing and correcting QSMs","archived":false,"fork":false,"pushed_at":"2025-10-17T16:21:59.000Z","size":70856,"stargazers_count":13,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-29T22:01:40.110Z","etag":null,"topics":["forestry","lidar","modeling","qsm","r","r-package","rcpp","rpackage"],"latest_commit_sha":null,"homepage":"https://aidanmorales.github.io/rTwig/","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/aidanmorales.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":null,"funding":null,"license":"LICENSE.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-04-07T15:32:10.000Z","updated_at":"2025-10-22T16:11:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"2eafb82a-4310-41a5-8dcb-769d89842ceb","html_url":"https://github.com/aidanmorales/rTwig","commit_stats":{"total_commits":229,"total_committers":1,"mean_commits":229.0,"dds":0.0,"last_synced_commit":"723ba22185ab02d0788ae31b06e964c8065888e6"},"previous_names":["aidanmorales/rtwig"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/aidanmorales/rTwig","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":282007724,"owners_count":26598362,"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-10-31T02:00:07.401Z","response_time":57,"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_record":{"login":"aidanmorales","name":"Aidan Morales","uuid":"130003551","kind":"user","description":"Master's student in forestry specializing in remote sensing","email":"","website":null,"location":"Michigan, USA","twitter":null,"company":"Michigan State University","icon_url":"https://avatars.githubusercontent.com/u/130003551?u=200235370ee0a753a015edc4f9abb83c242ebb09\u0026v=4","repositories_count":1,"last_synced_at":"2024-04-04T20:28:56.156Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/aidanmorales","funding_links":[],"total_stars":0,"followers":0,"following":0,"created_at":"2024-04-04T20:28:56.585Z","updated_at":"2024-04-04T20:28:56.585Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales/repositories"},"tags":[{"name":"v1.4.0","sha":"7f5eef83f1ae3e39c570478874f4ddc19709838c","kind":"commit","published_at":"2025-03-03T16:34:54.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.4.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"99005e14dc6166a9d3e6c2d82022f2b71e6be163","kind":"commit","published_at":"2024-11-21T21:01:53.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.3.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"47d6568211ef87416aedd0c599f0b328cd531022","kind":"commit","published_at":"2024-11-08T01:10:24.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.2.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"b198a7c6fe4f6322a9ec38f746dc4a0d38cdc59e","kind":"commit","published_at":"2024-08-20T21:10:01.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.1.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.1.0/manifests"},{"name":"v1.0.2","sha":"19ec8a45cb496a6776811ad83cb72f73f10b9e3c","kind":"commit","published_at":"2024-04-05T22:31:17.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.0.2","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.2/manifests"},{"name":"v1.0.0","sha":"153ca7bde252b5bc77ebed1fa6c33fd7da04eac5","kind":"commit","published_at":"2024-04-04T21:37:11.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.0.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2025-11-07T02:01:47.827Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":5.764254255794306,"dependent_packages_count":5.401293307900869,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":5.582773781847587},"purl":"pkg:golang/github.com/aidanmorales/rtwig","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/aidanmorales/rtwig","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/aidanmorales/rtwig","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/aidanmorales/rtwig/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-10T02:34:54.654Z","issues_count":24,"pull_requests_count":0,"avg_time_to_close_issue":1079636.375,"avg_time_to_close_pull_request":null,"issues_closed_count":16,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":4,"avg_comments_per_issue":2.1666666666666665,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":21,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":1302390.0,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":13,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":2.4761904761904763,"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/aidanmorales%2Frtwig/issues","maintainers":[{"login":"aidanmorales","count":14,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/aidanmorales"}],"active_maintainers":[{"login":"aidanmorales","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/aidanmorales"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2Frtwig/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2Frtwig/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2Frtwig/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2Frtwig/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2Frtwig/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2Frtwig/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2162227,"maintainers_count":0,"namespaces_count":791500,"keywords_count":113139,"github":"golang","metadata":{"funded_packages_count":53899},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-06-02T05:03:22.111Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}},{"id":11729194,"name":"github.com/aidanmorales/rTwig","ecosystem":"go","description":null,"homepage":null,"licenses":"other","normalized_licenses":["Other"],"repository_url":"https://github.com/aidanmorales/rTwig","keywords_array":[],"namespace":null,"versions_count":6,"first_release_published_at":"2025-06-04T10:54:23.393Z","latest_release_published_at":"2025-03-03T16:34:54.000Z","latest_release_number":"v1.4.0","last_synced_at":"2026-06-05T11:03:00.540Z","created_at":"2025-06-04T10:54:22.174Z","updated_at":"2026-06-05T11:03:00.540Z","registry_url":"https://pkg.go.dev/github.com/aidanmorales/rTwig","install_command":"go get github.com/aidanmorales/rTwig","documentation_url":"https://pkg.go.dev/github.com/aidanmorales/rTwig#section-documentation","metadata":{},"repo_metadata":{"id":231595885,"uuid":"624919197","full_name":"aidanmorales/rTwig","owner":"aidanmorales","description":"R package for analyzing and correcting QSMs","archived":false,"fork":false,"pushed_at":"2025-10-17T16:21:59.000Z","size":70856,"stargazers_count":13,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-29T22:01:40.110Z","etag":null,"topics":["forestry","lidar","modeling","qsm","r","r-package","rcpp","rpackage"],"latest_commit_sha":null,"homepage":"https://aidanmorales.github.io/rTwig/","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/aidanmorales.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":null,"funding":null,"license":"LICENSE.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-04-07T15:32:10.000Z","updated_at":"2025-10-22T16:11:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"2eafb82a-4310-41a5-8dcb-769d89842ceb","html_url":"https://github.com/aidanmorales/rTwig","commit_stats":{"total_commits":229,"total_committers":1,"mean_commits":229.0,"dds":0.0,"last_synced_commit":"723ba22185ab02d0788ae31b06e964c8065888e6"},"previous_names":["aidanmorales/rtwig"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/aidanmorales/rTwig","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281713535,"owners_count":26548732,"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-10-29T02:00:06.901Z","response_time":59,"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_record":{"login":"aidanmorales","name":"Aidan Morales","uuid":"130003551","kind":"user","description":"Master's student in forestry specializing in remote sensing","email":"","website":null,"location":"Michigan, USA","twitter":null,"company":"Michigan State University","icon_url":"https://avatars.githubusercontent.com/u/130003551?u=200235370ee0a753a015edc4f9abb83c242ebb09\u0026v=4","repositories_count":1,"last_synced_at":"2024-04-04T20:28:56.156Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/aidanmorales","funding_links":[],"total_stars":0,"followers":0,"following":0,"created_at":"2024-04-04T20:28:56.585Z","updated_at":"2024-04-04T20:28:56.585Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales/repositories"},"tags":[{"name":"v1.4.0","sha":"7f5eef83f1ae3e39c570478874f4ddc19709838c","kind":"commit","published_at":"2025-03-03T16:34:54.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.4.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"99005e14dc6166a9d3e6c2d82022f2b71e6be163","kind":"commit","published_at":"2024-11-21T21:01:53.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.3.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"47d6568211ef87416aedd0c599f0b328cd531022","kind":"commit","published_at":"2024-11-08T01:10:24.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.2.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"b198a7c6fe4f6322a9ec38f746dc4a0d38cdc59e","kind":"commit","published_at":"2024-08-20T21:10:01.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.1.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.1.0/manifests"},{"name":"v1.0.2","sha":"19ec8a45cb496a6776811ad83cb72f73f10b9e3c","kind":"commit","published_at":"2024-04-05T22:31:17.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.0.2","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.2/manifests"},{"name":"v1.0.0","sha":"153ca7bde252b5bc77ebed1fa6c33fd7da04eac5","kind":"commit","published_at":"2024-04-04T21:37:11.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.0.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2025-11-07T02:01:01.600Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":5.764254255794306,"dependent_packages_count":5.401293307900869,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":5.582773781847587},"purl":"pkg:golang/github.com/aidanmorales/r%21twig","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/aidanmorales/rTwig","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/aidanmorales/rTwig","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/aidanmorales/rTwig/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-10T02:34:54.654Z","issues_count":24,"pull_requests_count":0,"avg_time_to_close_issue":1079636.375,"avg_time_to_close_pull_request":null,"issues_closed_count":16,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":4,"avg_comments_per_issue":2.1666666666666665,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":21,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":1302390.0,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":13,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":2.4761904761904763,"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/aidanmorales%2Frtwig/issues","maintainers":[{"login":"aidanmorales","count":14,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/aidanmorales"}],"active_maintainers":[{"login":"aidanmorales","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/aidanmorales"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2FrTwig/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2FrTwig/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2FrTwig/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2FrTwig/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2FrTwig/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Faidanmorales%2FrTwig/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2162227,"maintainers_count":0,"namespaces_count":791500,"keywords_count":113139,"github":"golang","metadata":{"funded_packages_count":53899},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-06-02T05:03:22.111Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}},{"id":9642821,"name":"rTwig","ecosystem":"cran","description":"Realistic Quantitative Structure Models","homepage":"https://aidanmorales.github.io/rTwig/","licenses":"GPL (≥ 3)","normalized_licenses":["CNRI-Python-GPL-Compatible"],"repository_url":"https://github.com/aidanmorales/rTwig","keywords_array":[],"namespace":null,"versions_count":5,"first_release_published_at":"2024-04-08T00:00:00.000Z","latest_release_published_at":"2025-03-03T00:00:00.000Z","latest_release_number":"1.4.0","last_synced_at":"2026-06-05T11:02:59.126Z","created_at":"2024-04-08T15:06:08.890Z","updated_at":"2026-06-05T11:50:59.111Z","registry_url":"https://cran.r-project.org/package=rTwig","install_command":null,"documentation_url":"http://cran.r-project.org/web/packages/rTwig/rTwig.pdf","metadata":{},"repo_metadata":{"id":231595885,"uuid":"624919197","full_name":"aidanmorales/rTwig","owner":"aidanmorales","description":"R package for analyzing and correcting QSMs","archived":false,"fork":false,"pushed_at":"2026-05-07T21:48:05.000Z","size":75550,"stargazers_count":17,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-05-22T08:59:01.492Z","etag":null,"topics":["forestry","lidar","modeling","qsm","r","r-package","rcpp","rpackage"],"latest_commit_sha":null,"homepage":"https://aidanmorales.github.io/rTwig/","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/aidanmorales.png","metadata":{"files":{"readme":"README.Rmd","changelog":"NEWS.md","contributing":null,"funding":null,"license":"LICENSE.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-04-07T15:32:10.000Z","updated_at":"2026-05-07T21:39:52.000Z","dependencies_parsed_at":"2026-05-22T02:02:02.424Z","dependency_job_id":null,"html_url":"https://github.com/aidanmorales/rTwig","commit_stats":{"total_commits":229,"total_committers":1,"mean_commits":229.0,"dds":0.0,"last_synced_commit":"723ba22185ab02d0788ae31b06e964c8065888e6"},"previous_names":["aidanmorales/rtwig"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/aidanmorales/rTwig","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33681809,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-30T02:00:06.278Z","response_time":92,"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_record":{"login":"aidanmorales","name":"Aidan Morales","uuid":"130003551","kind":"user","description":"Master's student in forestry specializing in remote sensing","email":"","website":null,"location":"Michigan, USA","twitter":null,"company":"Michigan State University","icon_url":"https://avatars.githubusercontent.com/u/130003551?u=200235370ee0a753a015edc4f9abb83c242ebb09\u0026v=4","repositories_count":1,"last_synced_at":"2024-04-04T20:28:56.156Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/aidanmorales","funding_links":[],"total_stars":0,"followers":0,"following":0,"created_at":"2024-04-04T20:28:56.585Z","updated_at":"2024-04-04T20:28:56.585Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidanmorales/repositories"},"tags":[{"name":"v1.4.0","sha":"7f5eef83f1ae3e39c570478874f4ddc19709838c","kind":"commit","published_at":"2025-03-03T16:34:54.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.4.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"99005e14dc6166a9d3e6c2d82022f2b71e6be163","kind":"commit","published_at":"2024-11-21T21:01:53.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.3.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"47d6568211ef87416aedd0c599f0b328cd531022","kind":"commit","published_at":"2024-11-08T01:10:24.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.2.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"b198a7c6fe4f6322a9ec38f746dc4a0d38cdc59e","kind":"commit","published_at":"2024-08-20T21:10:01.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.1.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.1.0/manifests"},{"name":"v1.0.2","sha":"19ec8a45cb496a6776811ad83cb72f73f10b9e3c","kind":"commit","published_at":"2024-04-05T22:31:17.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.0.2","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.2/manifests"},{"name":"v1.0.0","sha":"153ca7bde252b5bc77ebed1fa6c33fd7da04eac5","kind":"commit","published_at":"2024-04-04T21:37:11.000Z","download_url":"https://codeload.github.com/aidanmorales/rTwig/tar.gz/v1.0.0","html_url":"https://github.com/aidanmorales/rTwig/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/aidanmorales/rTwig@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2FrTwig/tags/v1.0.0/manifests"}]},"repo_metadata_updated_at":"2026-06-05T11:50:59.084Z","dependent_packages_count":0,"downloads":184,"downloads_period":"last-month","dependent_repos_count":0,"rankings":{"downloads":85.16254036598492,"dependent_repos_count":35.98708288482239,"dependent_packages_count":27.995694294940797,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":49.71510584858271},"purl":"pkg:cran/rTwig","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/cran/rTwig","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/cran/rTwig","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/cran/rTwig/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-06-03T08:00:27.981Z","issues_count":29,"pull_requests_count":0,"avg_time_to_close_issue":2492271.210526316,"avg_time_to_close_pull_request":null,"issues_closed_count":19,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":4,"avg_comments_per_issue":1.9310344827586208,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":8,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":6444547.8,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":5,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":3,"past_year_avg_comments_per_issue":1.875,"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/aidanmorales%2Frtwig/issues","maintainers":[{"login":"aidanmorales","count":17,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/aidanmorales"}],"active_maintainers":[{"login":"aidanmorales","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/aidanmorales"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages/rTwig/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages/rTwig/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages/rTwig/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages/rTwig/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages/rTwig/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages/rTwig/codemeta","maintainers":[{"uuid":"moral169@msu.edu","login":null,"name":"Aidan Morales","email":"moral169@msu.edu","url":null,"packages_count":1,"html_url":null,"role":null,"created_at":"2024-04-08T15:26:59.902Z","updated_at":"2024-04-08T15:26:59.902Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/maintainers/moral169@msu.edu/packages"}],"registry":{"name":"cran.r-project.org","url":"https://cran.r-project.org","ecosystem":"cran","default":true,"packages_count":28630,"maintainers_count":15910,"namespaces_count":0,"keywords_count":0,"github":"r-project-org","metadata":{"icon_url":"https://cran.r-project.org/CRANlogo.png"},"icon_url":"https://cran.r-project.org/CRANlogo.png","created_at":"2022-04-06T16:32:25.637Z","updated_at":"2026-04-27T18:20:16.286Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/cran.r-project.org/namespaces"}}],"commits":{"id":6478059,"full_name":"aidanmorales/rtwig","default_branch":"main","total_commits":283,"total_committers":1,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":283.0,"dds":0.0,"past_year_total_commits":23,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":23.0,"past_year_dds":0.0,"last_synced_at":"2026-06-05T09:00:36.498Z","last_synced_commit":"65232cb17eda90a6075f009b24f65d65604c7b89","created_at":"2024-11-21T00:12:44.030Z","updated_at":"2026-06-05T09:00:36.438Z","committers":[{"name":"aidanmorales","email":"moral169@msu.edu","login":"aidanmorales","count":283}],"past_year_committers":[{"name":"aidanmorales","email":"moral169@msu.edu","login":"aidanmorales","count":23}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2Frtwig/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-06-06T00:00:08.871Z","repositories_count":6253836,"commits_count":884061840,"contributors_count":35046856,"owners_count":1163238,"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_stats":{"full_name":"aidanmorales/rtwig","html_url":"https://github.com/aidanmorales/rtwig","last_synced_at":"2026-06-03T08:00:27.981Z","status":"active","issues_count":29,"pull_requests_count":0,"avg_time_to_close_issue":2492271.210526316,"avg_time_to_close_pull_request":null,"issues_closed_count":19,"pull_requests_closed_count":0,"pull_request_authors_count":0,"issue_authors_count":4,"avg_comments_per_issue":1.9310344827586208,"avg_comments_per_pull_request":null,"merged_pull_requests_count":0,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":8,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":6444547.8,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":5,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":3,"past_year_avg_comments_per_issue":1.875,"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,"created_at":"2024-11-21T00:12:55.771Z","updated_at":"2026-06-03T08:00:27.982Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2Frtwig","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidanmorales%2Frtwig/issues","issue_labels_count":{},"pull_request_labels_count":{},"issue_author_associations_count":{"OWNER":17,"NONE":12},"pull_request_author_associations_count":{},"issue_authors":{"aidanmorales":17,"thomashay":8,"zhorve":3,"mwsgeoeco":1},"pull_request_authors":{},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-06-07T00:00:19.841Z","repositories_count":14776329,"issues_count":33482950,"pull_requests_count":110214423,"authors_count":11294775,"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":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{"NONE":4,"OWNER":4},"past_year_pull_request_author_associations_count":{},"past_year_issue_authors":{"aidanmorales":4,"zhorve":3,"thomashay":1},"past_year_pull_request_authors":{},"maintainers":[{"login":"aidanmorales","count":17,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/aidanmorales"}],"active_maintainers":[{"login":"aidanmorales","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/aidanmorales"}]},"events":{"total":{"ReleaseEvent":3,"IssuesEvent":36,"WatchEvent":7,"IssueCommentEvent":54,"PushEvent":154,"CreateEvent":3},"last_year":{"IssuesEvent":7,"WatchEvent":2,"IssueCommentEvent":6,"PushEvent":22}},"keywords":["forestry","lidar","modeling","qsm","r","r-package","rcpp","rpackage"],"dependencies":[{"ecosystem":"actions","filepath":".github/workflows/R-CMD-check.yaml","sha":null,"kind":"manifest","created_at":"2025-11-17T04:08:01.385Z","updated_at":"2025-11-17T04:08:01.385Z","repository_link":"https://github.com/aidanmorales/rTwig/blob/main/.github/workflows/R-CMD-check.yaml","dependencies":[{"id":25747786725,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":25747786726,"package_name":"r-lib/actions/setup-pandoc","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":25747786788,"package_name":"r-lib/actions/setup-r","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":25747787017,"package_name":"r-lib/actions/setup-r-dependencies","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":25747787098,"package_name":"r-lib/actions/check-r-package","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pkgdown.yaml","sha":null,"kind":"manifest","created_at":"2025-11-17T04:08:05.984Z","updated_at":"2025-11-17T04:08:05.984Z","repository_link":"https://github.com/aidanmorales/rTwig/blob/main/.github/workflows/pkgdown.yaml","dependencies":[{"id":25747787113,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":25747787114,"package_name":"r-lib/actions/setup-pandoc","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":25747787115,"package_name":"r-lib/actions/setup-r","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":25747787116,"package_name":"r-lib/actions/setup-r-dependencies","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":25747787117,"package_name":"JamesIves/github-pages-deploy-action","ecosystem":"actions","requirements":"v4.5.0","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/rhub.yaml","sha":null,"kind":"manifest","created_at":"2025-11-17T04:08:08.328Z","updated_at":"2025-11-17T04:08:08.328Z","repository_link":"https://github.com/aidanmorales/rTwig/blob/main/.github/workflows/rhub.yaml","dependencies":[{"id":25747787200,"package_name":"r-hub/actions/setup","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":25747787238,"package_name":"r-hub/actions/checkout","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":25747787255,"package_name":"r-hub/actions/platform-info","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":25747787368,"package_name":"r-hub/actions/setup-deps","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":25747787428,"package_name":"r-hub/actions/run-check","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":25747787438,"package_name":"r-hub/actions/setup-r","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"cran","filepath":"DESCRIPTION","sha":null,"kind":"manifest","created_at":"2025-11-17T04:08:12.526Z","updated_at":"2025-11-17T04:08:12.526Z","repository_link":"https://github.com/aidanmorales/rTwig/blob/main/DESCRIPTION","dependencies":[{"id":25747787465,"package_name":"R","ecosystem":"cran","requirements":"\u003e= 3.5.0","direct":true,"kind":"depends","optional":false},{"id":25747787508,"package_name":"R.matlab","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747787581,"package_name":"rmatio","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747787582,"package_name":"tidytable","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747787755,"package_name":"cobs","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747787786,"package_name":"igraph","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747787811,"package_name":"rgl","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747787877,"package_name":"colourvalues","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747787905,"package_name":"Rdpack","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747787908,"package_name":"rlang","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747787933,"package_name":"Rcpp","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747787952,"package_name":"RcppSimdJson","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747788066,"package_name":"geometry","ecosystem":"cran","requirements":"*","direct":true,"kind":"imports","optional":false},{"id":25747788142,"package_name":"knitr","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":25747788152,"package_name":"rmarkdown","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":25747788203,"package_name":"ggplot2","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":25747788297,"package_name":"ggpmisc","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":25747788415,"package_name":"ggpubr","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":25747788467,"package_name":"gt","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":25747788508,"package_name":"yardstick","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":25747788558,"package_name":"dplyr","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false},{"id":25747788642,"package_name":"tidyr","ecosystem":"cran","requirements":"*","direct":true,"kind":"suggests","optional":false}]}],"score":8.110727582974489,"created_at":"2024-11-21T00:12:42.480Z","updated_at":"2026-06-08T10:30:18.958Z","avatar_url":"https://github.com/aidanmorales.png","language":"R","category":"Biosphere","sub_category":"Forest Remote Sensing","monthly_downloads":184,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"---\noutput: github_document\n---\n\n\u003c!-- README.md is generated from README.Rmd. Please edit that file --\u003e\n\n```{r, include = FALSE}\nknitr::opts_chunk$set(\n  collapse = TRUE,\n  comment = \"#\u003e\",\n  out.width = \"100%\"\n)\n```\n\n# rTwig \u003cimg src=\"man/figures/logo.svg\" align=\"right\" height=\"139\"/\u003e\n\n\u003c!-- badges: start --\u003e\n\n[![](https://www.r-pkg.org/badges/version/rTwig)](https://cran.r-project.org/package=rTwig) [![](https://aidanmorales.r-universe.dev/badges/rTwig)](https://aidanmorales.r-universe.dev) [![](https://github.com/aidanmorales/rTwig/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/aidanmorales/rTwig/actions/workflows/R-CMD-check.yaml) [![](https://img.shields.io/github/last-commit/aidanmorales/rTwig.svg)](https://github.com/aidanmorales/rTwig/commits/main) [![](https://cranlogs.r-pkg.org/badges/grand-total/rTwig)](https://cran.r-project.org/package=rTwig) [![](https://cranlogs.r-pkg.org/badges/last-month/rTwig)](https://cran.r-project.org/package=rTwig) [![](https://img.shields.io/badge/license-GPL%20(%3E=%203)-orchid.svg)](https://cran.r-project.org/web/licenses/GPL-3)\n\n\u003c!-- badges: end --\u003e\n\n## Description\n\nReal Twig is a method to correct unrealistic cylinders in quantitative structure models (QSMs), different than traditional allometric or statistical corrections. Small branch and twig cylinders are overestimated in QSMs due to technical limitations in current LiDAR sensor technology. Real Twig overcomes these limitations by using real and direct twig diameter measurements from corresponding tree species to inform individual path taper models in a QSM. Real Twig dynamically identifies realistic cylinders in a QSM using network analysis, general additive models, and direct twig measurements, to model and correct unrealistic cylinders with a high degree of precision and accuracy when vetted against ground truth reference data. The Real Twig method is presented here as the R package, rTwig.\n\nrTwig includes a novel database of twig diameter measurements for many common North American and European trees, to make the method immediately accessible to the user. In addition, rTwig includes fast and efficient tools for QSM visualization and analysis that are seamlessly compatible with the R ecosystem, and for point cloud fractal analysis and visualization using the box-dimension metric.\n\n## Method\n\nA complete description and validation of Real Twig can be read here:\n\n**Aidan Morales**, and **David W. MacFarlane**. \"Reducing tree volume overestimation in quantitative structure models using modeled branch topology and direct twig measurements\" *Forestry: An International Journal of Forest Research*, 2024, *98*(3), 394–409. \u003chttps://doi.org/10.1093/forestry/cpae046\u003e.\n\n**Aidan Morales**, and **David W. MacFarlane**. \"rTwig: An R package to correct overestimated small branches and twigs in quantitative structure models of trees\" *Science of Remote Sensing*, 2025, *12*, 100284. \u003chttps://doi.org/10.1016/j.srs.2025.100284\u003e\n\n## Features\n\n#### Realistic Trees\n\nThe main goal of Real Twig was to correct volume overestimation in QSMs caused by the limitations of LiDAR sensors for better non-destructive above ground biomass (AGB) estimates. Real Twig incorporates direct twig measurement into the QSM, resulting in models that not only have accurate volume metrics, but are also visually realistic, independent of tree species or size. For example, shown below is a 300+ year old white oak tree (*Quercus alba*), with and without Real Twig.\n\n\u003cimg src=\"man/figures/WO18_comparison.png\"/\u003e\n\n#### Efficient Visualization\n\n`plot_qsm()` can plot QSMs and point clouds, using `rgl` as the 3D display, and C++ via `Rcpp` to efficiently build the cylinders. The cylinders, simulated point cloud, and skeleton can all be plotted and colored by any variable or user supplied color palette. It can also visualize stem triangulation meshes from TreeQSM, and leaves created by either QSM-FaNNI or aRchi.\n\n|                               |                                   |\n|-------------------------------|-----------------------------------|\n| ![Plot](man/figures/plot.gif) | ![Trees](man/figures/WO7.gif)     |\n| ![Plot](man/figures/RO1.gif)  | ![Another](man/figures/stand.gif) |\n\n#### Detailed Tree Metrics\n\nThe goal of rTwig was to provide users with tools to visualize and analyze QSM metrics without being tied to any particular QSM software. To that end, `standardise_qsm()` provides a consistent naming convention between supported QSMs, making it easy to combine and analyze QSMs from different sources. `tree_metrics()` calculates all of the major QSM metrics between all supported software. `prune_qsm()` can virtually prune a tree using multiple input parameters. `cluster_cloud()` can transfer all QSM metrics directly onto an unorganized point cloud, or simulate a virtual point cloud. See the vignettes or function reference pages for more details.\n\n\u003cimg src=\"man/figures/crown_3d.png\"/\u003e\n\n#### Supported Software\n\nrTwig currently supports [TreeQSM](https://github.com/InverseTampere/TreeQSM), [SmartQSM](https://github.com/project-lightlin/SmartQSM), [SimpleForest](https://www.simpleforest.org/), [Treegraph](https://github.com/wanxinyang/treegraph), [aRchi](https://github.com/umr-amap/aRchi), [AdQSM](https://github.com/GuangpengFan/AdQSM), and [AdTree](https://github.com/tudelft3d/AdTree).\n\n## Functions\n\n### Import \u0026 Export\n\n| Function | Description |\n|----|----|\n| `import_qsm()` | Import a QSM from TreeQSM, SmartQSM, Treegraph, AdQSM, or AdTree (.mat, .json, .obj) |\n| `import_leaves()` | Import leaves created by the FaNNI algorithm (.obj) |\n| `export_mesh()` | Export a QSM to different mesh formats (.ply, .obj, .stl, .txt) |\n| `export_mat()` | Export a QSM to the TreeQSM MATLAB format (.mat) |\n\n### Processing\n\n| Function | Description |\n|----|----|\n| `run_rtwig()` | Run the Real Twig method on a QSM |\n| `standardise_qsm()` | Standardise QSM variable names across supported software |\n| `reconstruct_qsm()` | Reconstruct a QSM from the minimum amount of variables |\n| `update_cylinders()` | Update cylinder relationships and add new QSM variables |\n| `correct_radii()` | Model QSM paths and correct cylinder radii |\n| `prune_qsm()` | Prune a QSM by cylinder attributes, height, or diameter classes |\n\n### Analysis\n\n| Function | Description |\n|----|----|\n| `tree_metrics()` | Generate detailed tree metrics and a simulated point cloud |\n| `summarise_qsm()` | Summarise QSM diameter, height, volume, and surface area |\n| `box_dimension()` | Calculate and visualize the structural complexity of a point cloud |\n\n### Visualization\n\n| Function | Description |\n|----|----|\n| `plot_qsm()` | Plot QSMs and point clouds |\n| `smooth_qsm()` | Visually smooth a QSM by connecting cylinders end-to-end |\n| `cluster_cloud()` | Transfer QSM variables to a point cloud or simulate a point cloud |\n\n### Data\n\n| Function           | Description                               |\n|--------------------|-------------------------------------------|\n| `download_twigs()` | Download the official rTwig twig database |\n\n## Installation\n\nYou can install the released version of `rTwig` from [CRAN](https://cran.r-project.org/package=rTwig) with:\n\n``` r\ninstall.packages(\"rTwig\")\n```\n\nYou can install the development version of `rTwig` from [GitHub](https://github.com/aidanmorales/rTwig) with:\n\n``` r\n# install.packages(\"devtools\")\ndevtools::install_github(\"aidanmorales/rTwig\")\n```\n\n### Quick Start: Real Twig\n\nBelow are examples of how to quickly run and visualize Real Twig, using example data from the package. See the vignettes for more details on a general workflow and best practices.\n\n#### TreeQSM / SmartQSM\n\n``` r\n # Load the Real Twig library\n library(rTwig)\n \n # File path to QSM\n file \u003c- system.file(\"extdata/QSM.mat\", package = \"rTwig\")\n \n # Correct QSM cylinders\n qsm \u003c- run_rtwig(file, twig_radius = 4.23)\n \n # Plot the result\n plot_qsm(qsm$cylinder)\n \n # View detailed tree metrics\n qsm$metrics\n```\n\n#### SimpleForest / aRchi\n\n``` r\n # Load the Real Twig library\n library(rTwig)\n \n # File path to QSM\n \n file \u003c- system.file(\"extdata/QSM.csv\", package = \"rTwig\") # SimpleForest\n file \u003c- system.file(\"extdata/QSM2.csv\", package = \"rTwig\") # aRchi\n \n # Correct QSM cylinders\n qsm \u003c- run_rtwig(file, twig_radius = 4.23)\n \n # Plot the result\n plot_qsm(qsm$cylinder)\n \n # View detailed tree metrics\n qsm$metrics\n```\n\n#### Treegraph\n\n``` r\n # Load the Real Twig library\n library(rTwig)\n \n # File path to QSM\n file \u003c- \"path_to_treegraph_json\"\n \n # Correct QSM cylinders\n qsm \u003c- run_rtwig(file, twig_radius = 4.23)\n \n # Plot the result\n plot_qsm(qsm$cylinder)\n \n # View detailed tree metrics\n qsm$metrics\n```\n\n#### AdQSM / AdTree\n\n``` r\n # Load the Real Twig library\n library(rTwig)\n \n # File path to QSM\n file \u003c- \"path_to_adqsm_obj\"\n \n # Correct QSM cylinders\n qsm \u003c- run_rtwig(file, twig_radius = 4.23)\n \n # Plot the result\n plot_qsm(qsm$cylinder)\n \n # View detailed tree metrics\n qsm$metrics\n```\n\n### Quick Start: Fractal Analysis\n\nrTwig also includes an efficient function written in C++ via `Rcpp` for fractal analysis using the voxel-counting method. Below is an example of how to quickly calculate box-dimension on a point cloud using example data from the package. See the vignette for more details and explanation.\n\n``` r\n# Load a point cloud\nfile \u003c- system.file(\"extdata/cloud.txt\", package = \"rTwig\")\ncloud \u003c- read.table(file)\n\n# Calculate box-dimension\noutput \u003c- box_dimension(cloud)\noutput[[2]]$slope\n```\n\n\u003cimg src=\"man/figures/box_dimension3d.png\" align=\"center\"/\u003e\n","funding_links":[],"readme_doi_urls":["https://doi.org/10.1093/forestry/cpae046","https://doi.org/10.1016/j.srs.2025.100284"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://ost.ecosyste.ms/api/v1/projects/304264","html_url":"https://ost.ecosyste.ms/projects/304264"}