{"id":342300,"name":"H2Integrate","description":"An open-source Python package for modeling and designing hybrid energy systems producing electricity, hydrogen, ammonia, steel, and other products.","url":"https://github.com/natlabrockies/h2integrate","last_synced_at":"2026-05-20T06:30:18.252Z","repository":{"id":258441094,"uuid":"869013342","full_name":"NatLabRockies/H2Integrate","owner":"NatLabRockies","description":null,"archived":false,"fork":false,"pushed_at":"2026-05-14T20:04:26.000Z","size":591138,"stargazers_count":23,"open_issues_count":189,"forks_count":36,"subscribers_count":5,"default_branch":"main","last_synced_at":"2026-05-14T21:44:59.319Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://h2integrate.readthedocs.io/","language":"Python","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/NatLabRockies.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-10-07T15:12:46.000Z","updated_at":"2026-05-14T18:03:57.000Z","dependencies_parsed_at":"2026-02-26T04:16:52.752Z","dependency_job_id":null,"html_url":"https://github.com/NatLabRockies/H2Integrate","commit_stats":null,"previous_names":["nrel/greenheart","nrel/h2integrate","natlabrockies/h2integrate"],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/NatLabRockies/H2Integrate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NatLabRockies","download_url":"https://codeload.github.com/NatLabRockies/H2Integrate/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33203989,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-18T09:27:30.708Z","status":"online","status_checked_at":"2026-05-19T02:00:06.763Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"NatLabRockies","name":"National Laboratory of the Rockies","uuid":"1906800","kind":"organization","description":"","email":null,"website":"http://www.nrel.gov","location":"Golden, CO","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1906800?v=4","repositories_count":599,"last_synced_at":"2026-01-22T09:57:55.744Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/NatLabRockies","funding_links":[],"total_stars":9633,"followers":1309,"following":0,"created_at":"2022-11-02T20:42:15.539Z","updated_at":"2026-01-22T09:57:55.745Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NatLabRockies","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NatLabRockies/repositories"},"packages":[{"id":11531616,"name":"h2integrate","ecosystem":"pypi","description":"Holistic Hybrids Optimization and Design Tool","homepage":null,"licenses":"BSD 3-Clause License\n        \n        Copyright (c) 2024, Alliance for Sustainable Energy, LLC\n        All rights reserved.\n        \n        Redistribution and use in source and binary forms, with or without\n        modification, are permitted provided that the following conditions are met:\n        \n        * Redistributions of source code must retain the above copyright notice, this\n          list of conditions and the following disclaimer.\n        \n        * Redistributions in binary form must reproduce the above copyright notice,\n          this list of conditions and the following disclaimer in the documentation\n          and/or other materials provided with the distribution.\n        \n        * Neither the name of the copyright holder nor the names of its\n          contributors may be used to endorse or promote products derived from\n          this software without specific prior written permission.\n        \n        THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n        AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n        IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n        DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\n        FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\n        DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n        SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\n        CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\n        OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n        OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n        ","normalized_licenses":["Other"],"repository_url":"https://github.com/NatLabRockies/H2Integrate","keywords_array":["python3","hybrid-energy","wind-energy","solar-energy","layout-optimization"],"namespace":null,"versions_count":10,"first_release_published_at":"2025-04-08T21:17:50.000Z","latest_release_published_at":"2026-04-16T00:25:32.000Z","latest_release_number":"0.8.0","last_synced_at":"2026-05-17T05:00:55.456Z","created_at":"2025-04-08T21:32:06.756Z","updated_at":"2026-05-17T05:00:55.456Z","registry_url":"https://pypi.org/project/h2integrate/","install_command":"pip install h2integrate --index-url https://pypi.org/simple","documentation_url":"https://h2integrate.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 4 - Beta","Intended Audience :: Developers","Intended Audience :: Other Audience","Intended Audience :: Science/Research","License :: OSI Approved :: BSD License","Natural Language :: English","Operating System :: OS Independent","Programming Language :: Python","Programming Language :: Python :: 3 :: Only","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Topic :: Scientific/Engineering","Topic :: Software Development :: Libraries :: Python Modules"],"normalized_name":"h2integrate","project_status":null},"repo_metadata":{"id":258441094,"uuid":"869013342","full_name":"NatLabRockies/H2Integrate","owner":"NatLabRockies","description":null,"archived":false,"fork":false,"pushed_at":"2026-03-31T23:05:42.000Z","size":587072,"stargazers_count":19,"open_issues_count":148,"forks_count":32,"subscribers_count":5,"default_branch":"main","last_synced_at":"2026-04-02T13:14:31.345Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://h2integrate.readthedocs.io/","language":"Python","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/NatLabRockies.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-10-07T15:12:46.000Z","updated_at":"2026-03-13T22:06:09.000Z","dependencies_parsed_at":"2026-02-26T04:16:52.752Z","dependency_job_id":null,"html_url":"https://github.com/NatLabRockies/H2Integrate","commit_stats":null,"previous_names":["nrel/greenheart","nrel/h2integrate","natlabrockies/h2integrate"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/NatLabRockies/H2Integrate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NatLabRockies","download_url":"https://codeload.github.com/NatLabRockies/H2Integrate/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31455474,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T21:22:52.476Z","status":"ssl_error","status_checked_at":"2026-04-05T21:22:51.943Z","response_time":75,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"tags":[]},"repo_metadata_updated_at":"2026-05-13T21:19:53.720Z","dependent_packages_count":0,"downloads":444,"downloads_period":"last-month","dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":52.59965636510982,"dependent_packages_count":9.338210731774543,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":30.968933548442184},"purl":"pkg:pypi/h2integrate","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/h2integrate","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/h2integrate","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/h2integrate/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-04-07T22:03:53.686Z","issues_count":14,"pull_requests_count":31,"avg_time_to_close_issue":5178168.666666667,"avg_time_to_close_pull_request":786435.1111111111,"issues_closed_count":3,"pull_requests_closed_count":9,"pull_request_authors_count":7,"issue_authors_count":5,"avg_comments_per_issue":1.0714285714285714,"avg_comments_per_pull_request":0.4838709677419355,"merged_pull_requests_count":9,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":14,"past_year_pull_requests_count":31,"past_year_avg_time_to_close_issue":5178168.666666667,"past_year_avg_time_to_close_pull_request":786435.1111111111,"past_year_issues_closed_count":3,"past_year_pull_requests_closed_count":9,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.0714285714285714,"past_year_avg_comments_per_pull_request":0.4838709677419355,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":9,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate/issues","maintainers":[{"login":"elenya-grant","count":17,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/elenya-grant"},{"login":"johnjasa","count":7,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/johnjasa"},{"login":"kbrunik","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/kbrunik"},{"login":"jaredthomas68","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jaredthomas68"},{"login":"RHammond2","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/RHammond2"},{"login":"genevievestarke","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/genevievestarke"},{"login":"jmartin4u","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jmartin4u"}],"active_maintainers":[{"login":"elenya-grant","count":17,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/elenya-grant"},{"login":"johnjasa","count":7,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/johnjasa"},{"login":"kbrunik","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/kbrunik"},{"login":"jaredthomas68","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jaredthomas68"},{"login":"RHammond2","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/RHammond2"},{"login":"genevievestarke","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/genevievestarke"},{"login":"jmartin4u","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jmartin4u"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/h2integrate/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/h2integrate/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/h2integrate/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/h2integrate/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/h2integrate/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/h2integrate/codemeta","maintainers":[{"uuid":"cbay","login":"cbay","name":null,"email":null,"url":null,"packages_count":4,"html_url":"https://pypi.org/user/cbay/","role":"Owner","created_at":"2025-08-27T11:08:27.865Z","updated_at":"2025-08-27T11:08:27.865Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/cbay/packages"},{"uuid":"rhammond","login":"rhammond","name":null,"email":null,"url":null,"packages_count":18,"html_url":"https://pypi.org/user/rhammond/","role":null,"created_at":"2025-04-08T21:42:28.055Z","updated_at":"2025-04-08T21:42:28.055Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/rhammond/packages"},{"uuid":"johnjasa","login":"johnjasa","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/johnjasa/","role":"Owner","created_at":"2025-05-06T00:08:02.963Z","updated_at":"2025-05-06T00:08:02.963Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/johnjasa/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":866106,"maintainers_count":370162,"namespaces_count":0,"keywords_count":280639,"github":"pypi","metadata":{"funded_packages_count":53810},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2026-05-13T05:09:37.527Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":11615476,"full_name":"natlabrockies/h2integrate","default_branch":"master","total_commits":1975,"total_committers":33,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":59.84848484848485,"dds":0.8222784810126582,"past_year_total_commits":374,"past_year_total_committers":9,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":41.55555555555556,"past_year_dds":0.6631016042780749,"last_synced_at":"2026-05-17T01:03:48.728Z","last_synced_commit":"af03c23b0712b988892817bbf37d19dcece683fc","created_at":"2026-02-02T02:01:01.648Z","updated_at":"2026-05-17T01:01:55.460Z","committers":[{"name":"Jared Thomas","email":"jaredthomas68@gmail.com","login":"jaredthomas68","count":351},{"name":"kbrunik","email":"kbrunik@gmail.com","login":"kbrunik","count":266},{"name":"elenya-grant","email":"116225007+elenya-grant","login":"elenya-grant","count":204},{"name":"John Jasa","email":"johnjasa11@gmail.com","login":"johnjasa","count":157},{"name":"dguittet","email":"dguittet@nrel.gov","login":"dguittet","count":148},{"name":"Evan","email":"Evan.Reznicek@nrel.gov","login":"ereznicek","count":129},{"name":"bayc","email":"christopher.j.bay@gmail.com","login":"bayc","count":108},{"name":"jmartin4","email":"jonathan.martin@nrel.gov","login":"jmartin4nrel","count":106},{"name":"Aaron Barker","email":"barker59@gmail.com","login":"barker59","count":103},{"name":"RHammond2","email":"13874373+RHammond2","login":"RHammond2","count":100},{"name":"Cameron Irmas","email":"cirmas@protonmail.com","login":"camirmas","count":51},{"name":"Masha","email":"mkoleva@nrel.gov","login":"mariya-koleva","count":45},{"name":"Genevieve Starke","email":"Genevieve.Starke@nrel.gov","login":"genevievestarke","count":32},{"name":"nriccobo","email":"Nicholas.Riccobono@nrel.gov","login":"nRiccobo","count":32},{"name":"Cory Frontin","email":"cory.frontin@nrel.gov","login":"cfrontin","count":28},{"name":"WHamilt2","email":"william.hamilton@nrel.gov","login":"qualand","count":24},{"name":"King","email":"jennifer.king@nrel.gov","login":null,"count":18},{"name":"Matthew Boyd","email":"mr.matthew.boyd@gmail.com","login":"Matthew-Boyd","count":17},{"name":"PJ Stanley","email":"astanley@nrel.gov","login":null,"count":13},{"name":"Bhaskar","email":"parangat.bhaskar@nrel.gov","login":null,"count":9},{"name":"svijaysh","email":"svijaysh@nrel.gov","login":"vijay092","count":6},{"name":"Jamie","email":"Jamie.Kee@nrel.gov","login":null,"count":6},{"name":"AbhineetGupta","email":"abhineet.gupta@nrel.gov","login":"abhineet-gupta","count":5},{"name":"Dakota Sky Ramos","email":"85905407+dakotaramos","login":"dakotaramos","count":3},{"name":"jlcox119","email":"jlcox@mines.edu","login":null,"count":3},{"name":"Kiefer","email":"ckiefer@nrel.gov","login":null,"count":3},{"name":"Jonathan Martin","email":"94018654+jmartin4u","login":"jmartin4u","count":2},{"name":"Caitlyn E. Clark, PhD","email":"caitlyn.clark@nrel.gov","login":"caitlynclark","count":1},{"name":"Charles Kiefer","email":"107942102+ckiefer14","login":"ckiefer14","count":1},{"name":"Jamie","email":"jamielkee@gmail.com","login":"benjaminkee","count":1},{"name":"King","email":"jannoni@jannoni-31697s.nrel.gov","login":null,"count":1},{"name":"Annoni","email":"jennifer.annoni@.nrel.gov","login":null,"count":1},{"name":"Michael Rossol","email":"18647211+MRossol","login":"MRossol","count":1}],"past_year_committers":[{"name":"elenya-grant","email":"116225007+elenya-grant","login":"elenya-grant","count":126},{"name":"John Jasa","email":"johnjasa11@gmail.com","login":"johnjasa","count":78},{"name":"jmartin4","email":"jonathan.martin@nrel.gov","login":"jmartin4nrel","count":61},{"name":"kbrunik","email":"102193481+kbrunik","login":"kbrunik","count":49},{"name":"Rob Hammond","email":"13874373+RHammond2","login":"RHammond2","count":28},{"name":"Jared Thomas","email":"jaredthomas68","login":"jaredthomas68","count":23},{"name":"genevievestarke","email":"103534902+genevievestarke","login":"genevievestarke","count":6},{"name":"Jonathan Martin","email":"94018654+jmartin4u","login":"jmartin4u","count":2},{"name":"Dakota Sky Ramos","email":"85905407+dakotaramos","login":"dakotaramos","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/natlabrockies%2Fh2integrate/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-05-16T00:00:17.015Z","repositories_count":6235211,"commits_count":884555110,"contributors_count":34906581,"owners_count":1153879,"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":"NatLabRockies/H2Integrate","html_url":"https://github.com/NatLabRockies/H2Integrate","last_synced_at":"2026-05-17T05:00:43.992Z","status":"active","issues_count":49,"pull_requests_count":55,"avg_time_to_close_issue":5394002.5,"avg_time_to_close_pull_request":752722.0,"issues_closed_count":4,"pull_requests_closed_count":22,"pull_request_authors_count":8,"issue_authors_count":8,"avg_comments_per_issue":0.7142857142857143,"avg_comments_per_pull_request":0.6545454545454545,"merged_pull_requests_count":21,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":49,"past_year_pull_requests_count":55,"past_year_avg_time_to_close_issue":5394002.5,"past_year_avg_time_to_close_pull_request":752722.0,"past_year_issues_closed_count":4,"past_year_pull_requests_closed_count":22,"past_year_pull_request_authors_count":8,"past_year_issue_authors_count":8,"past_year_avg_comments_per_issue":0.7142857142857143,"past_year_avg_comments_per_pull_request":0.6545454545454545,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":21,"created_at":"2026-01-22T00:00:12.951Z","updated_at":"2026-05-17T05:00:43.992Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/NatLabRockies%2FH2Integrate/issues","issue_labels_count":{"enhancement":6,"framework":3,"in progress":2,"iron":2,"dispatch":2,"finance":1,"geoh2":1},"pull_request_labels_count":{"ready for review":31,"dispatch":8,"code cleanup":6,"enhancement":6,"framework":3,"in progress":2,"on hold":2,"finance":2,"geoh2":2,"nationwide sweeps":1,"ammonia":1,"infrastructure":1,"needs modifications":1,"documentation":1},"issue_author_associations_count":{"COLLABORATOR":49},"pull_request_author_associations_count":{"COLLABORATOR":55},"issue_authors":{"johnjasa":14,"genevievestarke":12,"elenya-grant":10,"jaredthomas68":6,"vijay092":3,"kbrunik":2,"jmartin4u":1,"bayc":1},"pull_request_authors":{"elenya-grant":23,"RHammond2":8,"johnjasa":7,"kbrunik":6,"jaredthomas68":5,"jmartin4u":2,"vijay092":2,"genevievestarke":2},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-05-19T00:00:20.226Z","repositories_count":14638209,"issues_count":34118826,"pull_requests_count":111694550,"authors_count":11266230,"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":{"enhancement":6,"framework":3,"dispatch":2,"in progress":2,"iron":2,"finance":1,"geoh2":1},"past_year_pull_request_labels_count":{"ready for review":31,"dispatch":8,"code cleanup":6,"enhancement":6,"framework":3,"geoh2":2,"finance":2,"in progress":2,"on hold":2,"documentation":1,"nationwide sweeps":1,"needs modifications":1,"ammonia":1,"infrastructure":1},"past_year_issue_author_associations_count":{"COLLABORATOR":49},"past_year_pull_request_author_associations_count":{"COLLABORATOR":55},"past_year_issue_authors":{"johnjasa":14,"genevievestarke":12,"elenya-grant":10,"jaredthomas68":6,"vijay092":3,"kbrunik":2,"bayc":1,"jmartin4u":1},"past_year_pull_request_authors":{"elenya-grant":23,"RHammond2":8,"johnjasa":7,"kbrunik":6,"jaredthomas68":5,"genevievestarke":2,"jmartin4u":2,"vijay092":2},"maintainers":[{"login":"elenya-grant","count":33,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/elenya-grant"},{"login":"johnjasa","count":21,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/johnjasa"},{"login":"genevievestarke","count":14,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/genevievestarke"},{"login":"jaredthomas68","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jaredthomas68"},{"login":"RHammond2","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/RHammond2"},{"login":"kbrunik","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/kbrunik"},{"login":"vijay092","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/vijay092"},{"login":"jmartin4u","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jmartin4u"},{"login":"bayc","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bayc"}],"active_maintainers":[{"login":"elenya-grant","count":33,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/elenya-grant"},{"login":"johnjasa","count":21,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/johnjasa"},{"login":"genevievestarke","count":14,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/genevievestarke"},{"login":"jaredthomas68","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jaredthomas68"},{"login":"kbrunik","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/kbrunik"},{"login":"RHammond2","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/RHammond2"},{"login":"vijay092","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/vijay092"},{"login":"jmartin4u","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jmartin4u"},{"login":"bayc","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/bayc"}]},"events":{"total":{"ReleaseEvent":3,"DeleteEvent":1,"PullRequestEvent":72,"IssuesEvent":60,"WatchEvent":1,"IssueCommentEvent":38,"PushEvent":91,"PullRequestReviewEvent":193,"PullRequestReviewCommentEvent":261,"CreateEvent":1},"last_year":{"ReleaseEvent":3,"DeleteEvent":1,"PullRequestEvent":72,"IssuesEvent":60,"WatchEvent":1,"IssueCommentEvent":38,"PushEvent":91,"PullRequestReviewEvent":193,"PullRequestReviewCommentEvent":261,"CreateEvent":1}},"keywords":[],"dependencies":[{"ecosystem":"actions","filepath":".github/workflows/ci.yml","sha":null,"kind":"manifest","created_at":"2024-10-19T02:26:29.058Z","updated_at":"2024-10-19T02:26:29.058Z","repository_link":"https://github.com/NatLabRockies/H2Integrate/blob/main/.github/workflows/ci.yml","dependencies":[{"id":20272969019,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":20272969020,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/publish_to_pypi.yml","sha":null,"kind":"manifest","created_at":"2024-10-19T02:26:29.115Z","updated_at":"2024-10-19T02:26:29.115Z","repository_link":"https://github.com/NatLabRockies/H2Integrate/blob/main/.github/workflows/publish_to_pypi.yml","dependencies":[{"id":20272969023,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":20272969024,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":20272969025,"package_name":"pypa/gh-action-pypi-publish","ecosystem":"actions","requirements":"release/v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/publish_to_test_pypi.yml","sha":null,"kind":"manifest","created_at":"2024-10-19T02:26:29.126Z","updated_at":"2024-10-19T02:26:29.126Z","repository_link":"https://github.com/NatLabRockies/H2Integrate/blob/main/.github/workflows/publish_to_test_pypi.yml","dependencies":[{"id":20272969026,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":20272969027,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":20272969028,"package_name":"pypa/gh-action-pypi-publish","ecosystem":"actions","requirements":"release/v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2024-10-19T02:26:29.140Z","updated_at":"2024-10-19T02:26:29.140Z","repository_link":"https://github.com/NatLabRockies/H2Integrate/blob/main/pyproject.toml","dependencies":[{"id":20272969029,"package_name":"Cython","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969030,"package_name":"NREL-PySAM","ecosystem":"pypi","requirements":"==4.2.0","direct":true,"kind":"runtime","optional":false},{"id":20272969047,"package_name":"Pillow","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969048,"package_name":"Plotly","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969087,"package_name":"Pyomo","ecosystem":"pypi","requirements":"\u003e=6.1.2","direct":true,"kind":"runtime","optional":false},{"id":20272969102,"package_name":"diskcache","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969103,"package_name":"fastkml","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969104,"package_name":"floris","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969641,"package_name":"future","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969642,"package_name":"global_land_mask","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969677,"package_name":"humpday","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969678,"package_name":"hybridbosse","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969680,"package_name":"lcoe","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969681,"package_name":"lxml","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969682,"package_name":"matplotlib","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969683,"package_name":"multiprocessing-on-dill","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969684,"package_name":"nevergrad","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969687,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969688,"package_name":"numpy-financial","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969689,"package_name":"optuna","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969690,"package_name":"pandas","ecosystem":"pypi","requirements":"\u003e=2.0.3","direct":true,"kind":"runtime","optional":false},{"id":20272969691,"package_name":"pint","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969692,"package_name":"plotly","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969693,"package_name":"pvmismatch","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969694,"package_name":"pyDOE2","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969695,"package_name":"pymoo","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969702,"package_name":"pyproj","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969703,"package_name":"pysolar","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969704,"package_name":"pysot","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969723,"package_name":"python-dotenv","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969724,"package_name":"python-rapidjson","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969725,"package_name":"pytz","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969726,"package_name":"rainflow","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969748,"package_name":"requests","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969749,"package_name":"scikit-learn","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969750,"package_name":"scikit-optimize","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969751,"package_name":"scipy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969752,"package_name":"shapely","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969753,"package_name":"setuptools","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969754,"package_name":"timezonefinder","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969755,"package_name":"urllib3","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969756,"package_name":"openpyxl","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272969757,"package_name":"CoolProp","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272970853,"package_name":"attrs","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272970854,"package_name":"utm","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":20272970855,"package_name":"HOPP","ecosystem":"pypi","requirements":"\u003e=3.0","direct":true,"kind":"runtime","optional":false},{"id":20272971492,"package_name":"orbit-nrel","ecosystem":"pypi","requirements":"\u003e=1.1","direct":true,"kind":"runtime","optional":false},{"id":20272971588,"package_name":"openmdao","ecosystem":"pypi","requirements":"[all]","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"conda","filepath":"environment.yml","sha":null,"kind":"manifest","created_at":"2026-01-03T08:03:54.841Z","updated_at":"2026-01-03T08:03:54.841Z","repository_link":"https://github.com/NatLabRockies/H2Integrate/blob/main/environment.yml","dependencies":[{"id":25786524140,"package_name":"python","ecosystem":"conda","requirements":"3.11","direct":true,"kind":"runtime","optional":false},{"id":25786524141,"package_name":"glpk","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":25786524143,"package_name":"pip","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pre-commit.yml","sha":null,"kind":"manifest","created_at":"2026-01-03T08:03:54.442Z","updated_at":"2026-01-03T08:03:54.442Z","repository_link":"https://github.com/NatLabRockies/H2Integrate/blob/main/.github/workflows/pre-commit.yml","dependencies":[{"id":25786524130,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":25786524131,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false},{"id":25786524132,"package_name":"pre-commit/action","ecosystem":"actions","requirements":"v3.0.1","direct":true,"kind":"composite","optional":false}]}],"score":14.955652430752062,"created_at":"2026-01-22T00:03:09.081Z","updated_at":"2026-05-20T06:30:18.253Z","avatar_url":"https://github.com/NatLabRockies.png","language":"Python","category":"Energy Systems","sub_category":"Energy System Modeling Frameworks","monthly_downloads":444,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"# H2Integrate: Holistic Hybrids Optimization and Design Tool\n\n[![PyPI version](https://badge.fury.io/py/H2Integrate.svg)](https://badge.fury.io/py/H2Integrate)\n![CI Tests](https://github.com/NatLabRockies/H2Integrate/actions/workflows/ci.yml/badge.svg)\n[![image](https://img.shields.io/pypi/pyversions/H2Integrate.svg)](https://pypi.python.org/pypi/H2Integrate)\n[![License](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)\n[![DOI 10.5281/zenodo.17903150](https://zenodo.org/badge/DOI/10.5281/zenodo.17903150.svg)](https://zenodo.org/records/17903150)\n\nH2Integrate (H2I) is an open-source Python package for hybrid energy systems engineering design and technoeconomic analysis.\nIt models hybrid systems, especially hybrid energy plants that produce electricity, hydrogen, ammonia, steel, and other products, to perform optimization and scenario analysis.\n\n## Installation\n\nThe recommended installation method is via pip from PyPI, which will install the latest stable release of H2Integrate and its dependencies:\n\n```bash\npip install h2integrate\n```\n\nFor installing from source, development setup, and additional installation options, see the [full installation instructions](https://h2integrate.readthedocs.io/en/latest/getting_started/install.html).\n\n## What H2Integrate Does\n\nH2Integrate is both a **hybrid systems engineering design tool** and a **technoeconomic analysis (TEA) tool**. It significantly expands beyond generalized tools by offering:\n\n- **Detailed equipment-level modeling** with a wide range of subsystem variation options\n- **High-resolution, location-specific resource data** for site-dependent performance modeling\n- **Cost inputs settable by the user** with examples based on the [Annual Technology Baseline (ATB)](https://atb.nlr.gov/)\n- **Optimization and scenario analysis** to explore design trade-offs across hybrid plant configurations\n\n### Available Technologies\n\nH2I includes models for a broad set of energy generation, conversion, and storage technologies.\nThis is a non-exhaustive list, and the library of available technologies is actively expanding:\n\n- **Electricity generation**: solar PV, wind, wave, tidal, natural gas combined cycle (NGCC), natural gas combustion turbines (NGCT), nuclear, grid\n- **Hydrogen production**: PEM electrolysis, NG-SMR\n- **Energy storage**: Li-ion batteries, long-duration energy storage (LDES), pumped storage hydropower (PSH)\n- **Fuel cells**: H2 PEM fuel cells\n- **Industrial processes**: ammonia synthesis, iron ore reduction, steel production, and more\n\n## Getting Started\n\nSee the [Getting Started guide](https://h2integrate.readthedocs.io/en/latest/intro.html) for an introduction to H2Integrate.\nThe [Examples folder](./examples/) contain Jupyter notebooks, Python scripts, and sample YAML files for common usage scenarios.\n\n## Publications\n\nFor a full list of publications, see the [Publications section in the documentation](https://h2integrate.readthedocs.io/en/latest/intro.html#publications).\nNote: H2Integrate was previously known as GreenHEART, and some publications may refer to it by that name.\n\n## Software Citation\n\nIf you use H2I or any of its components in your work, please cite this in your publications using the following BibTeX:\n\n```bibtex\n@software{brunik_2025_17903150,\n  author = {Brunik, Kaitlin and\n    Grant, Elenya and\n    Thomas, Jared and\n    Starke, Genevieve M and\n    Martin, Jonathan and\n    Ramos, Dakota and\n    Koleva, Mariya and\n    Reznicek, Evan and\n    Hammond, Rob and\n    Stanislawski, Brooke and\n    Kiefer, Charlie and\n    Irmas, Cameron and\n    Vijayshankar, Sanjana and\n    Riccobono, Nicholas and\n    Frontin, Cory and\n    Clark, Caitlyn and\n    Barker, Aaron and\n    Gupta, Abhineet and\n    Kee, Benjamin (Jamie) and\n    King, Jennifer and\n    Jasa, John and\n    Bay, Christopher},\n  title = {H2Integrate: Holistic Hybrids Optimization and Design Tool},\n  month = dec,\n  year = 2025,\n  publisher = {Zenodo},\n  version = {0.4.0},\n  doi = {10.5281/zenodo.17903150},\n  url = {https://doi.org/10.5281/zenodo.17903150},\n}\n```\n\n## Contributing\n\nInterested in improving H2Integrate? Please see the [Contributor's Guide](./docs/CONTRIBUTING.md) for more information.\n","funding_links":[],"readme_doi_urls":["https://doi.org/10.5281/zenodo.17903150"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["wind","openmdao","systems-engineering","wisdem","wind-energy"],"project_url":"https://ost.ecosyste.ms/api/v1/projects/342300","html_url":"https://ost.ecosyste.ms/projects/342300"}