{"id":35551,"name":"bety","description":"Web-interface to the Biofuel Ecophysiological Traits and Yields Database (used by PEcAn and TERRA REF)","url":"https://github.com/pecanproject/bety","last_synced_at":"2025-09-05T06:44:59.562Z","repository":{"id":5647054,"uuid":"6855801","full_name":"PecanProject/bety","owner":"PecanProject","description":"Web-interface to the Biofuel Ecophysiological Traits and Yields Database (used by PEcAn and TERRA REF)","archived":false,"fork":false,"pushed_at":"2024-08-21T04:10:46.000Z","size":39237,"stargazers_count":18,"open_issues_count":174,"forks_count":37,"subscribers_count":36,"default_branch":"develop","last_synced_at":"2025-09-02T12:12:53.480Z","etag":null,"topics":["agriculture","crops","database","ecosystem-models","pecan","phenotyping","plants","postgis","ruby","trait"],"latest_commit_sha":null,"homepage":"https://www.betydb.org","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PecanProject.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-11-25T21:09:46.000Z","updated_at":"2025-05-21T16:25:01.000Z","dependencies_parsed_at":"2024-11-06T00:12:25.355Z","dependency_job_id":null,"html_url":"https://github.com/PecanProject/bety","commit_stats":{"total_commits":2254,"total_committers":22,"mean_commits":"102.45454545454545","dds":"0.40283939662821655","last_synced_commit":"1255e9112f3af6c746ebbbf22866390321bbe7a6"},"previous_names":[],"tags_count":80,"template":false,"template_full_name":null,"purl":"pkg:github/PecanProject/bety","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PecanProject%2Fbety","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PecanProject%2Fbety/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PecanProject%2Fbety/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PecanProject%2Fbety/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PecanProject","download_url":"https://codeload.github.com/PecanProject/bety/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PecanProject%2Fbety/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273723198,"owners_count":25156303,"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-09-05T02:00:09.113Z","response_time":402,"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":"PecanProject","name":"PEcAn Project","uuid":"2879854","kind":"organization","description":"","email":null,"website":"http://pecanproject.org","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/2879854?v=4","repositories_count":22,"last_synced_at":"2024-03-26T21:34:15.642Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/PecanProject","funding_links":[],"total_stars":250,"followers":29,"following":0,"created_at":"2022-11-04T12:02:35.332Z","updated_at":"2024-03-26T21:34:19.066Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PecanProject","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PecanProject/repositories"},"packages":null,"commits":{"id":1253944,"full_name":"PecanProject/bety","default_branch":"develop","committers":[{"name":"Scott Rohde","email":"srohde@igb.illinois.edu","login":"gsrohde","count":1346},{"name":"Rob Kooper","email":"kooper@illinois.edu","login":"robkooper","count":195},{"name":"David LeBauer","email":"dlebauer@gmail.com","login":"dlebauer","count":159},{"name":"Carl Crott","email":"carlcrott@gmail.com","login":"carlcrott","count":155},{"name":"Patrick Mulrooney","email":"mulroony@gmail.com","login":"mulroony","count":115},{"name":"Jeremy Kemball","email":"jkemball@gmail.com","login":"kemball","count":89},{"name":"yln","email":"sourgrapes612@hotmail.com","login":null,"count":60},{"name":"Jimmy Chen","email":"chen.s.jimmy@gmail.com","login":"jschen3","count":45},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":19},{"name":"Andrew Shirk","email":"shirk@illinois.edu","login":null,"count":17},{"name":"robbenyang","email":"robbenyang@gmail.com","login":"zyang36","count":10},{"name":"Max Burnette","email":"mburnet2@illinois.edu","login":"max-zilla","count":10},{"name":"MarvinJ","email":"hjiang13@illinois.edu","login":"MarvinJ","count":8},{"name":"udaysaraf","email":"saraf2@illinois.edu","login":"udaysaraf","count":7},{"name":"phenolphtalein","email":"phenolphtalein","login":"phenolphtalein","count":6},{"name":"Chris Black","email":"chris@ckblack.org","login":"infotroph","count":4},{"name":"Chris Schnaufer","email":"schnaufer@email.arizona.edu","login":"Chris-Schnaufer","count":3},{"name":"Jeremy Kemball","email":"jeremykemball@JHARTIGAN.local","login":null,"count":2},{"name":"Katrin Leinweber","email":"kalei@posteo.de","login":"katrinleinweber","count":1},{"name":"Shawn P. Serbin","email":"sserbin@bnl.gov","login":"serbinsh","count":1},{"name":"The Gitter Badger","email":"badger@gitter.im","login":"gitter-badger","count":1},{"name":"Haotian Jiang","email":"infijht@gmail.com","login":null,"count":1}],"total_commits":2254,"total_committers":22,"total_bot_commits":19,"total_bot_committers":1,"mean_commits":102.45454545454545,"dds":0.40283939662821655,"past_year_committers":[{"name":"Rob Kooper","email":"kooper@illinois.edu","login":"robkooper","count":7},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":4},{"name":"Chris Black","email":"chris@ckblack.org","login":"infotroph","count":2},{"name":"David LeBauer","email":"dlebauer@gmail.com","login":"dlebauer","count":1}],"past_year_total_commits":14,"past_year_total_committers":4,"past_year_total_bot_commits":4,"past_year_total_bot_committers":1,"past_year_mean_commits":3.5,"past_year_dds":0.5,"last_synced_at":"2025-08-09T00:11:36.189Z","last_synced_commit":"1255e9112f3af6c746ebbbf22866390321bbe7a6","created_at":"2023-03-27T10:48:51.542Z","updated_at":"2025-08-09T00:11:36.190Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/PecanProject%2Fbety/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-05T00:00:10.343Z","repositories_count":5480019,"commits_count":853389012,"contributors_count":31098138,"owners_count":906558,"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":"PecanProject/bety","html_url":"https://github.com/PecanProject/bety","last_synced_at":"2025-08-31T11:11:48.307Z","status":"error","issues_count":454,"pull_requests_count":309,"avg_time_to_close_issue":16808441.66782007,"avg_time_to_close_pull_request":5535233.899665552,"issues_closed_count":289,"pull_requests_closed_count":299,"pull_request_authors_count":22,"issue_authors_count":30,"avg_comments_per_issue":3.198237885462555,"avg_comments_per_pull_request":2.1100323624595467,"merged_pull_requests_count":206,"bot_issues_count":0,"bot_pull_requests_count":38,"past_year_issues_count":0,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":13478.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":2,"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":1,"created_at":"2023-05-09T10:40:47.466Z","updated_at":"2025-09-02T03:49:04.632Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/PecanProject%2Fbety","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/PecanProject%2Fbety/issues","issue_labels_count":{"4 - Done":73,"constraints":36,"terraref":36,"help wanted":35,"PEcAn":34,"bug":32,"1 - Ready":32,"qaqc":26,"2 - Working":24,"enhancement":20,"data":20,"question":18,"needs feedback":17,"will be completed by AddUniquenessConstraints migration":11,"3 - ready for release":7,"will be completed by migrations and other code in value_constraints_batch_1 branch":7,"in progress":5,"UA":5,"0 - Backlog":4,"Epic":3,"Discussion":3,"ready for review":2,"3.5 Needs documenting only":2,"wontfix":2,"will be completed by TimeConstraints migration":1,"wll be completed by code in miscellaneous_constraints branch":1,"duplicate":1,"dependencies":1},"pull_request_labels_count":{"dependencies":47,"in progress":20,"ready for review":19,"PEcAn":14,"1 - Ready":6,"needs feedback":6,"terraref":3,"enhancement":3,"2 - Working":3,"3 - ready for release":2,"Discussion":1,"wontfix":1,"4 - Done":1},"issue_author_associations_count":{"CONTRIBUTOR":242,"MEMBER":165,"NONE":38,"COLLABORATOR":10},"pull_request_author_associations_count":{"MEMBER":139,"CONTRIBUTOR":139,"COLLABORATOR":42,"NONE":8},"issue_authors":{"gsrohde":228,"dlebauer":99,"robkooper":25,"serbinsh":22,"Chris-Schnaufer":12,"mdietze":11,"zhangwenx":9,"echeng7":6,"samsrabin":5,"bcow":4,"ashiklom":4,"abstewa2":3,"craig-willis":3,"istfer":3,"infotroph":3,"braczka":2,"ankurdesai":2,"udaysaraf":1,"ghost":1,"max-zilla":1,"rahul799":1,"apourmok":1,"lovelilyinfall":1,"phenolphtalein":1,"justinmcgrath":1,"dependabot[bot]":1,"koolgax99":1,"ch1eroe1":1,"bkrohn":1,"Viskari":1,"NewcombMaria":1},"pull_request_authors":{"robkooper":80,"gsrohde":59,"dlebauer":51,"dependabot[bot]":47,"phenolphtalein":32,"MarvinJ":13,"kemball":9,"udaysaraf":6,"infotroph":6,"max-zilla":5,"zyang36":4,"Sagar2366":2,"Chris-Schnaufer":2,"Sweetdevil144":2,"finist":2,"jschen3":2,"KristinaRiemer":1,"gitter-badger":1,"serbinsh":1,"ashiklom":1,"katrinleinweber":1,"annakrystalli":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-02T00:00:07.986Z","repositories_count":10013865,"issues_count":30254127,"pull_requests_count":89389741,"authors_count":10211242,"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":{},"past_year_pull_request_author_associations_count":{"NONE":2},"past_year_issue_authors":{},"past_year_pull_request_authors":{"Sweetdevil144":2},"maintainers":[{"login":"dlebauer","count":150,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/dlebauer"},{"login":"robkooper","count":105,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/robkooper"},{"login":"phenolphtalein","count":33,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/phenolphtalein"},{"login":"serbinsh","count":23,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/serbinsh"},{"login":"mdietze","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/mdietze"},{"login":"infotroph","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/infotroph"},{"login":"udaysaraf","count":7,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/udaysaraf"},{"login":"echeng7","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/echeng7"},{"login":"ashiklom","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ashiklom"},{"login":"zyang36","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/zyang36"},{"login":"braczka","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/braczka"},{"login":"rahul799","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/rahul799"}],"active_maintainers":[]},"events":{"total":{"WatchEvent":2,"IssueCommentEvent":1,"PullRequestReviewCommentEvent":1,"PullRequestReviewEvent":2,"PullRequestEvent":2},"last_year":{"WatchEvent":2,"IssueCommentEvent":1,"PullRequestReviewCommentEvent":1,"PullRequestReviewEvent":2,"PullRequestEvent":2}},"keywords":["agriculture","crops","database","ecosystem-models","pecan","phenotyping","plants","postgis","ruby","trait"],"dependencies":[{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2022-08-08T16:15:10.691Z","updated_at":"2022-08-08T16:15:10.691Z","repository_link":"https://github.com/PecanProject/bety/blob/develop/Gemfile","dependencies":[{"id":673644573,"package_name":"rails","ecosystem":"rubygems","requirements":"= 5.2.4.6","direct":true,"kind":"runtime","optional":false},{"id":673644574,"package_name":"nokogiri","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644575,"package_name":"narray","ecosystem":"rubygems","requirements":"= 0.6.0.4","direct":true,"kind":"runtime","optional":false},{"id":673644576,"package_name":"choice","ecosystem":"rubygems","requirements":"= 0.1.6","direct":true,"kind":"runtime","optional":false},{"id":673644577,"package_name":"comma","ecosystem":"rubygems","requirements":"~\u003e 4.3.2","direct":true,"kind":"runtime","optional":false},{"id":673644578,"package_name":"json","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644579,"package_name":"rgeo","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644580,"package_name":"multi_json","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644581,"package_name":"railroad","ecosystem":"rubygems","requirements":"= 0.5.0","direct":true,"kind":"runtime","optional":false},{"id":673644582,"package_name":"recaptcha","ecosystem":"rubygems","requirements":"= 4.8.0","direct":true,"kind":"runtime","optional":false},{"id":673644583,"package_name":"ruby-graphviz","ecosystem":"rubygems","requirements":"= 1.0.8","direct":true,"kind":"runtime","optional":false},{"id":673644584,"package_name":"safe_attributes","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644585,"package_name":"seer","ecosystem":"rubygems","requirements":"= 0.10.0","direct":true,"kind":"runtime","optional":false},{"id":673644586,"package_name":"tzinfo","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644587,"package_name":"will_paginate","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644588,"package_name":"bootstrap-will_paginate","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644589,"package_name":"rails3-restful-authentication","ecosystem":"rubygems","requirements":"~\u003e 3.0.1","direct":true,"kind":"runtime","optional":false},{"id":673644590,"package_name":"dynamic_form","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644591,"package_name":"rabl","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644592,"package_name":"yajl-ruby","ecosystem":"rubygems","requirements":"~\u003e 1.3.1","direct":true,"kind":"runtime","optional":false},{"id":673644593,"package_name":"rubyzip","ecosystem":"rubygems","requirements":"~\u003e 1.3.0","direct":true,"kind":"runtime","optional":false},{"id":673644594,"package_name":"activerecord-session_store","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644595,"package_name":"protected_attributes_continued","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644596,"package_name":"sass-rails","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644597,"package_name":"coffee-rails","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644598,"package_name":"uglifier","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644599,"package_name":"activemodel-serializers-xml","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644600,"package_name":"jquery-rails","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644601,"package_name":"jquery-ui-rails","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644602,"package_name":"memoist","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644603,"package_name":"pg","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644604,"package_name":"activerecord-postgis-adapter","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644605,"package_name":"optimist","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644606,"package_name":"rspec-rails","ecosystem":"rubygems","requirements":"~\u003e 3.0","direct":true,"kind":"development","optional":false},{"id":673644607,"package_name":"yard","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":673644608,"package_name":"capybara","ecosystem":"rubygems","requirements":"~\u003e 2.8","direct":true,"kind":"development","optional":false},{"id":673644609,"package_name":"database_cleaner","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":673644610,"package_name":"rails-controller-testing","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":673644611,"package_name":"capybara-webkit","ecosystem":"rubygems","requirements":"~\u003e 1.7","direct":true,"kind":"development","optional":false},{"id":673644612,"package_name":"selenium-webdriver","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":673644613,"package_name":"pry","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":673644614,"package_name":"pry-rails","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":673644615,"package_name":"pry-byebug","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":673644616,"package_name":"passenger","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644617,"package_name":"unicorn","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":673644618,"package_name":"rspec_api_documentation","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644619,"package_name":"json-schema","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":673644620,"package_name":"apipie-rails","ecosystem":"rubygems","requirements":"= 0.5.6","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"rubygems","filepath":"Gemfile.lock","sha":null,"kind":"lockfile","created_at":"2022-08-08T16:15:10.978Z","updated_at":"2022-08-08T16:15:10.978Z","repository_link":"https://github.com/PecanProject/bety/blob/develop/Gemfile.lock","dependencies":[{"id":673645355,"package_name":"actioncable","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645356,"package_name":"actionmailer","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645357,"package_name":"actionpack","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645358,"package_name":"actionview","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645359,"package_name":"activejob","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645360,"package_name":"activemodel","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645361,"package_name":"activemodel-serializers-xml","ecosystem":"rubygems","requirements":"1.0.2","direct":false,"kind":"runtime","optional":false},{"id":673645362,"package_name":"activerecord","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645363,"package_name":"activerecord-postgis-adapter","ecosystem":"rubygems","requirements":"5.2.3","direct":false,"kind":"runtime","optional":false},{"id":673645364,"package_name":"activerecord-session_store","ecosystem":"rubygems","requirements":"2.0.0","direct":false,"kind":"runtime","optional":false},{"id":673645365,"package_name":"activestorage","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645366,"package_name":"activesupport","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645367,"package_name":"addressable","ecosystem":"rubygems","requirements":"2.8.0","direct":false,"kind":"runtime","optional":false},{"id":673645368,"package_name":"apipie-rails","ecosystem":"rubygems","requirements":"0.5.6","direct":false,"kind":"runtime","optional":false},{"id":673645369,"package_name":"arel","ecosystem":"rubygems","requirements":"9.0.0","direct":false,"kind":"runtime","optional":false},{"id":673645370,"package_name":"bootstrap-will_paginate","ecosystem":"rubygems","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":673645371,"package_name":"builder","ecosystem":"rubygems","requirements":"3.2.4","direct":false,"kind":"runtime","optional":false},{"id":673645372,"package_name":"byebug","ecosystem":"rubygems","requirements":"11.1.3","direct":false,"kind":"runtime","optional":false},{"id":673645373,"package_name":"capybara","ecosystem":"rubygems","requirements":"2.18.0","direct":false,"kind":"runtime","optional":false},{"id":673645374,"package_name":"capybara-webkit","ecosystem":"rubygems","requirements":"1.15.1","direct":false,"kind":"runtime","optional":false},{"id":673645375,"package_name":"childprocess","ecosystem":"rubygems","requirements":"3.0.0","direct":false,"kind":"runtime","optional":false},{"id":673645376,"package_name":"choice","ecosystem":"rubygems","requirements":"0.1.6","direct":false,"kind":"runtime","optional":false},{"id":673645377,"package_name":"coderay","ecosystem":"rubygems","requirements":"1.1.3","direct":false,"kind":"runtime","optional":false},{"id":673645378,"package_name":"coffee-rails","ecosystem":"rubygems","requirements":"5.0.0","direct":false,"kind":"runtime","optional":false},{"id":673645379,"package_name":"coffee-script","ecosystem":"rubygems","requirements":"2.4.1","direct":false,"kind":"runtime","optional":false},{"id":673645380,"package_name":"coffee-script-source","ecosystem":"rubygems","requirements":"1.12.2","direct":false,"kind":"runtime","optional":false},{"id":673645381,"package_name":"comma","ecosystem":"rubygems","requirements":"4.3.2","direct":false,"kind":"runtime","optional":false},{"id":673645382,"package_name":"concurrent-ruby","ecosystem":"rubygems","requirements":"1.1.9","direct":false,"kind":"runtime","optional":false},{"id":673645383,"package_name":"crass","ecosystem":"rubygems","requirements":"1.0.6","direct":false,"kind":"runtime","optional":false},{"id":673645384,"package_name":"database_cleaner","ecosystem":"rubygems","requirements":"2.0.1","direct":false,"kind":"runtime","optional":false},{"id":673645385,"package_name":"database_cleaner-active_record","ecosystem":"rubygems","requirements":"2.0.1","direct":false,"kind":"runtime","optional":false},{"id":673645386,"package_name":"database_cleaner-core","ecosystem":"rubygems","requirements":"2.0.1","direct":false,"kind":"runtime","optional":false},{"id":673645387,"package_name":"diff-lcs","ecosystem":"rubygems","requirements":"1.4.4","direct":false,"kind":"runtime","optional":false},{"id":673645388,"package_name":"dynamic_form","ecosystem":"rubygems","requirements":"1.1.4","direct":false,"kind":"runtime","optional":false},{"id":673645389,"package_name":"erubi","ecosystem":"rubygems","requirements":"1.10.0","direct":false,"kind":"runtime","optional":false},{"id":673645390,"package_name":"execjs","ecosystem":"rubygems","requirements":"2.8.1","direct":false,"kind":"runtime","optional":false},{"id":673645391,"package_name":"ffi","ecosystem":"rubygems","requirements":"1.15.4","direct":false,"kind":"runtime","optional":false},{"id":673645392,"package_name":"globalid","ecosystem":"rubygems","requirements":"0.5.2","direct":false,"kind":"runtime","optional":false},{"id":673645393,"package_name":"i18n","ecosystem":"rubygems","requirements":"1.8.10","direct":false,"kind":"runtime","optional":false},{"id":673645394,"package_name":"jquery-rails","ecosystem":"rubygems","requirements":"4.4.0","direct":false,"kind":"runtime","optional":false},{"id":673645395,"package_name":"jquery-ui-rails","ecosystem":"rubygems","requirements":"6.0.1","direct":false,"kind":"runtime","optional":false},{"id":673645396,"package_name":"json","ecosystem":"rubygems","requirements":"2.5.1","direct":false,"kind":"runtime","optional":false},{"id":673645397,"package_name":"json-schema","ecosystem":"rubygems","requirements":"2.8.1","direct":false,"kind":"runtime","optional":false},{"id":673645398,"package_name":"kgio","ecosystem":"rubygems","requirements":"2.11.4","direct":false,"kind":"runtime","optional":false},{"id":673645399,"package_name":"loofah","ecosystem":"rubygems","requirements":"2.12.0","direct":false,"kind":"runtime","optional":false},{"id":673645400,"package_name":"mail","ecosystem":"rubygems","requirements":"2.7.1","direct":false,"kind":"runtime","optional":false},{"id":673645401,"package_name":"marcel","ecosystem":"rubygems","requirements":"0.3.3","direct":false,"kind":"runtime","optional":false},{"id":673645402,"package_name":"memoist","ecosystem":"rubygems","requirements":"0.16.2","direct":false,"kind":"runtime","optional":false},{"id":673645403,"package_name":"method_source","ecosystem":"rubygems","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":673645404,"package_name":"mimemagic","ecosystem":"rubygems","requirements":"0.3.10","direct":false,"kind":"runtime","optional":false},{"id":673645405,"package_name":"mini_mime","ecosystem":"rubygems","requirements":"1.1.1","direct":false,"kind":"runtime","optional":false},{"id":673645406,"package_name":"mini_portile2","ecosystem":"rubygems","requirements":"2.6.1","direct":false,"kind":"runtime","optional":false},{"id":673645407,"package_name":"minitest","ecosystem":"rubygems","requirements":"5.14.4","direct":false,"kind":"runtime","optional":false},{"id":673645408,"package_name":"multi_json","ecosystem":"rubygems","requirements":"1.15.0","direct":false,"kind":"runtime","optional":false},{"id":673645409,"package_name":"mustache","ecosystem":"rubygems","requirements":"1.1.1","direct":false,"kind":"runtime","optional":false},{"id":673645410,"package_name":"narray","ecosystem":"rubygems","requirements":"0.6.0.4","direct":false,"kind":"runtime","optional":false},{"id":673645411,"package_name":"nio4r","ecosystem":"rubygems","requirements":"2.5.8","direct":false,"kind":"runtime","optional":false},{"id":673645412,"package_name":"nokogiri","ecosystem":"rubygems","requirements":"1.12.5","direct":false,"kind":"runtime","optional":false},{"id":673645413,"package_name":"optimist","ecosystem":"rubygems","requirements":"3.0.1","direct":false,"kind":"runtime","optional":false},{"id":673645414,"package_name":"passenger","ecosystem":"rubygems","requirements":"6.0.11","direct":false,"kind":"runtime","optional":false},{"id":673645415,"package_name":"pg","ecosystem":"rubygems","requirements":"1.2.3","direct":false,"kind":"runtime","optional":false},{"id":673645416,"package_name":"protected_attributes_continued","ecosystem":"rubygems","requirements":"1.8.2","direct":false,"kind":"runtime","optional":false},{"id":673645417,"package_name":"pry","ecosystem":"rubygems","requirements":"0.13.1","direct":false,"kind":"runtime","optional":false},{"id":673645418,"package_name":"pry-byebug","ecosystem":"rubygems","requirements":"3.9.0","direct":false,"kind":"runtime","optional":false},{"id":673645419,"package_name":"pry-rails","ecosystem":"rubygems","requirements":"0.3.9","direct":false,"kind":"runtime","optional":false},{"id":673645420,"package_name":"public_suffix","ecosystem":"rubygems","requirements":"4.0.6","direct":false,"kind":"runtime","optional":false},{"id":673645421,"package_name":"rabl","ecosystem":"rubygems","requirements":"0.14.5","direct":false,"kind":"runtime","optional":false},{"id":673645422,"package_name":"racc","ecosystem":"rubygems","requirements":"1.5.2","direct":false,"kind":"runtime","optional":false},{"id":673645423,"package_name":"rack","ecosystem":"rubygems","requirements":"2.2.3","direct":false,"kind":"runtime","optional":false},{"id":673645424,"package_name":"rack-test","ecosystem":"rubygems","requirements":"1.1.0","direct":false,"kind":"runtime","optional":false},{"id":673645425,"package_name":"railroad","ecosystem":"rubygems","requirements":"0.5.0","direct":false,"kind":"runtime","optional":false},{"id":673645426,"package_name":"rails","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645427,"package_name":"rails-controller-testing","ecosystem":"rubygems","requirements":"1.0.5","direct":false,"kind":"runtime","optional":false},{"id":673645428,"package_name":"rails-dom-testing","ecosystem":"rubygems","requirements":"2.0.3","direct":false,"kind":"runtime","optional":false},{"id":673645429,"package_name":"rails-html-sanitizer","ecosystem":"rubygems","requirements":"1.4.2","direct":false,"kind":"runtime","optional":false},{"id":673645430,"package_name":"rails3-restful-authentication","ecosystem":"rubygems","requirements":"3.0.1","direct":false,"kind":"runtime","optional":false},{"id":673645431,"package_name":"railties","ecosystem":"rubygems","requirements":"5.2.4.6","direct":false,"kind":"runtime","optional":false},{"id":673645432,"package_name":"raindrops","ecosystem":"rubygems","requirements":"0.19.2","direct":false,"kind":"runtime","optional":false},{"id":673645433,"package_name":"rake","ecosystem":"rubygems","requirements":"13.0.6","direct":false,"kind":"runtime","optional":false},{"id":673645434,"package_name":"recaptcha","ecosystem":"rubygems","requirements":"4.8.0","direct":false,"kind":"runtime","optional":false},{"id":673645435,"package_name":"rgeo","ecosystem":"rubygems","requirements":"2.3.0","direct":false,"kind":"runtime","optional":false},{"id":673645436,"package_name":"rgeo-activerecord","ecosystem":"rubygems","requirements":"6.2.2","direct":false,"kind":"runtime","optional":false},{"id":673645437,"package_name":"rspec","ecosystem":"rubygems","requirements":"3.9.0","direct":false,"kind":"runtime","optional":false},{"id":673645438,"package_name":"rspec-core","ecosystem":"rubygems","requirements":"3.9.3","direct":false,"kind":"runtime","optional":false},{"id":673645439,"package_name":"rspec-expectations","ecosystem":"rubygems","requirements":"3.9.4","direct":false,"kind":"runtime","optional":false},{"id":673645440,"package_name":"rspec-mocks","ecosystem":"rubygems","requirements":"3.9.1","direct":false,"kind":"runtime","optional":false},{"id":673645441,"package_name":"rspec-rails","ecosystem":"rubygems","requirements":"3.9.1","direct":false,"kind":"runtime","optional":false},{"id":673645442,"package_name":"rspec-support","ecosystem":"rubygems","requirements":"3.9.4","direct":false,"kind":"runtime","optional":false},{"id":673645443,"package_name":"rspec_api_documentation","ecosystem":"rubygems","requirements":"6.1.0","direct":false,"kind":"runtime","optional":false},{"id":673645444,"package_name":"ruby-graphviz","ecosystem":"rubygems","requirements":"1.0.8","direct":false,"kind":"runtime","optional":false},{"id":673645445,"package_name":"rubyzip","ecosystem":"rubygems","requirements":"1.3.0","direct":false,"kind":"runtime","optional":false},{"id":673645446,"package_name":"safe_attributes","ecosystem":"rubygems","requirements":"1.0.10","direct":false,"kind":"runtime","optional":false},{"id":673645447,"package_name":"sass-rails","ecosystem":"rubygems","requirements":"6.0.0","direct":false,"kind":"runtime","optional":false},{"id":673645448,"package_name":"sassc","ecosystem":"rubygems","requirements":"2.4.0","direct":false,"kind":"runtime","optional":false},{"id":673645449,"package_name":"sassc-rails","ecosystem":"rubygems","requirements":"2.1.2","direct":false,"kind":"runtime","optional":false},{"id":673645450,"package_name":"seer","ecosystem":"rubygems","requirements":"0.10.0","direct":false,"kind":"runtime","optional":false},{"id":673645451,"package_name":"selenium-webdriver","ecosystem":"rubygems","requirements":"3.142.7","direct":false,"kind":"runtime","optional":false},{"id":673645452,"package_name":"sprockets","ecosystem":"rubygems","requirements":"4.0.2","direct":false,"kind":"runtime","optional":false},{"id":673645453,"package_name":"sprockets-rails","ecosystem":"rubygems","requirements":"3.2.2","direct":false,"kind":"runtime","optional":false},{"id":673645454,"package_name":"thor","ecosystem":"rubygems","requirements":"1.1.0","direct":false,"kind":"runtime","optional":false},{"id":673645455,"package_name":"thread_safe","ecosystem":"rubygems","requirements":"0.3.6","direct":false,"kind":"runtime","optional":false},{"id":673645456,"package_name":"tilt","ecosystem":"rubygems","requirements":"2.0.10","direct":false,"kind":"runtime","optional":false},{"id":673645457,"package_name":"tzinfo","ecosystem":"rubygems","requirements":"1.2.9","direct":false,"kind":"runtime","optional":false},{"id":673645458,"package_name":"uglifier","ecosystem":"rubygems","requirements":"4.2.0","direct":false,"kind":"runtime","optional":false},{"id":673645459,"package_name":"unicorn","ecosystem":"rubygems","requirements":"6.0.0","direct":false,"kind":"runtime","optional":false},{"id":673645460,"package_name":"websocket-driver","ecosystem":"rubygems","requirements":"0.7.5","direct":false,"kind":"runtime","optional":false},{"id":673645461,"package_name":"websocket-extensions","ecosystem":"rubygems","requirements":"0.1.5","direct":false,"kind":"runtime","optional":false},{"id":673645462,"package_name":"will_paginate","ecosystem":"rubygems","requirements":"3.3.1","direct":false,"kind":"runtime","optional":false},{"id":673645463,"package_name":"xpath","ecosystem":"rubygems","requirements":"3.2.0","direct":false,"kind":"runtime","optional":false},{"id":673645464,"package_name":"yajl-ruby","ecosystem":"rubygems","requirements":"1.3.1","direct":false,"kind":"runtime","optional":false},{"id":673645465,"package_name":"yard","ecosystem":"rubygems","requirements":"0.9.26","direct":false,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/ci.yml","sha":null,"kind":"manifest","created_at":"2023-01-11T17:00:09.750Z","updated_at":"2023-01-11T17:00:09.750Z","repository_link":"https://github.com/PecanProject/bety/blob/develop/.github/workflows/ci.yml","dependencies":[{"id":6869359329,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6869359330,"package_name":"actions/cache","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":6869359331,"package_name":"actions/setup-ruby","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":6869359332,"package_name":"mdillon/postgis","ecosystem":"actions","requirements":"9.5","direct":true,"kind":"docker","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/dbdump.yml","sha":null,"kind":"manifest","created_at":"2023-01-11T17:00:09.851Z","updated_at":"2023-01-11T17:00:09.851Z","repository_link":"https://github.com/PecanProject/bety/blob/develop/.github/workflows/dbdump.yml","dependencies":[{"id":6869359334,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":6869359335,"package_name":"mdillon/postgis","ecosystem":"actions","requirements":"9.5","direct":true,"kind":"docker","optional":false}]},{"ecosystem":"docker","filepath":"Dockerfile","sha":null,"kind":"manifest","created_at":"2023-01-11T17:00:10.027Z","updated_at":"2023-01-11T17:00:10.027Z","repository_link":"https://github.com/PecanProject/bety/blob/develop/Dockerfile","dependencies":[{"id":6869359341,"package_name":"ruby","ecosystem":"docker","requirements":"2.6","direct":true,"kind":"build","optional":false}]},{"ecosystem":"docker","filepath":"docker-compose.yml","sha":null,"kind":"manifest","created_at":"2023-01-11T17:00:10.157Z","updated_at":"2023-01-11T17:00:10.157Z","repository_link":"https://github.com/PecanProject/bety/blob/develop/docker-compose.yml","dependencies":[{"id":6869359342,"package_name":"pecan/bety","ecosystem":"docker","requirements":"${BRANCH","direct":true,"kind":"runtime","optional":false},{"id":6869359343,"package_name":"mdillon/postgis","ecosystem":"docker","requirements":"9.5","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"docker","filepath":"initdb/Dockerfile","sha":null,"kind":"manifest","created_at":"2023-01-11T17:00:10.193Z","updated_at":"2023-01-11T17:00:10.193Z","repository_link":"https://github.com/PecanProject/bety/blob/develop/initdb/Dockerfile","dependencies":[{"id":6869359344,"package_name":"alpine","ecosystem":"docker","requirements":"latest","direct":true,"kind":"build","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/docker.yml","sha":null,"kind":"manifest","created_at":"2024-11-06T00:02:30.539Z","updated_at":"2024-11-06T00:02:30.539Z","repository_link":"https://github.com/PecanProject/bety/blob/develop/.github/workflows/docker.yml","dependencies":[{"id":20582239675,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":20582239676,"package_name":"docker/metadata-action","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":20582239677,"package_name":"docker/setup-qemu-action","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":20582239678,"package_name":"docker/setup-buildx-action","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":20582239679,"package_name":"docker/login-action","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":20582239680,"package_name":"docker/build-push-action","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"docker","filepath":"docker-compose.develop.yml","sha":null,"kind":"manifest","created_at":"2024-11-06T00:02:30.643Z","updated_at":"2024-11-06T00:02:30.643Z","repository_link":"https://github.com/PecanProject/bety/blob/develop/docker-compose.develop.yml","dependencies":[]}],"score":8.348537825386098,"created_at":"2025-09-04T15:51:09.043Z","updated_at":"2025-10-07T08:14:46.576Z","avatar_url":"https://github.com/PecanProject.png","language":"Ruby","category":null,"sub_category":null,"monthly_downloads":0,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["pdes","optim","network-simulation","hacking","interactive","projection","generic","sequences","interpretability","mesh"],"project_url":"https://science.ecosyste.ms/api/v1/projects/35551","html_url":"https://science.ecosyste.ms/projects/35551","bibtex_url":"https://science.ecosyste.ms/projects/35551/export.bibtex","apalike_url":"https://science.ecosyste.ms/projects/35551/export.apalike"}