{"id":19875,"name":"StorageVET","description":"A valuation model for analysis of energy storage technologies and some other energy resources paired with storage.","url":"https://github.com/epri-dev/StorageVET","last_synced_at":"2025-10-16T01:31:54.917Z","repository":{"id":41506098,"uuid":"265883519","full_name":"epri-dev/StorageVET","owner":"epri-dev","description":"StorageVET 2.0 is a valuation model for analysis of energy storage technologies and some other energy resources paired with storage. The tool can be used as a standalone model, or integrated with other power system models, thanks to its open-source Python framework. Download the executable environment and learn more at https://www.storagevet.com.","archived":false,"fork":false,"pushed_at":"2024-04-29T03:59:00.000Z","size":14604,"stargazers_count":63,"open_issues_count":6,"forks_count":25,"subscribers_count":20,"default_branch":"master","last_synced_at":"2024-10-29T21:00:06.478Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.storagevet.com","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/epri-dev.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","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}},"created_at":"2020-05-21T15:25:31.000Z","updated_at":"2024-06-11T09:07:39.000Z","dependencies_parsed_at":"2024-11-05T23:44:09.407Z","dependency_job_id":null,"html_url":"https://github.com/epri-dev/StorageVET","commit_stats":{"total_commits":24,"total_committers":4,"mean_commits":6.0,"dds":0.5416666666666667,"last_synced_commit":"232a60bc6273b4789e2f38ae3557449c5e915b9d"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epri-dev%2FStorageVET","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epri-dev%2FStorageVET/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epri-dev%2FStorageVET/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epri-dev%2FStorageVET/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/epri-dev","download_url":"https://codeload.github.com/epri-dev/StorageVET/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":232685358,"owners_count":18560825,"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","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":"epri-dev","name":"EPRI","uuid":"10049875","kind":"organization","description":"","email":null,"website":"http://www.epri.com","location":"Palo Alto, CA","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/10049875?v=4","repositories_count":13,"last_synced_at":"2023-03-03T22:25:28.680Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/epri-dev","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-14T06:06:27.233Z","updated_at":"2023-03-03T22:25:28.911Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/epri-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/epri-dev/repositories"},"packages":[],"commits":{"id":1253954,"full_name":"epri-dev/StorageVET","default_branch":"master","committers":[{"name":"EPRI-SQA","email":"sqa@epri.com","count":11,"login":"EPRI-SQA"},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","count":6,"login":"dependabot[bot]"},{"name":"Vail, Sean","email":"svail@epri.com","count":5,"login":"svail-epri"},{"name":"pjle014","email":"joolee@epri.com","count":2,"login":null}],"total_commits":0,"total_committers":4,"total_bot_commits":6,"total_bot_committers":1,"mean_commits":6.0,"dds":0.5416666666666667,"past_year_committers":[],"past_year_total_commits":0,"past_year_total_committers":0,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":0.0,"past_year_dds":0.0,"last_synced_at":"2025-10-03T19:34:54.893Z","last_synced_commit":null,"created_at":"2023-03-27T10:49:00.716Z","updated_at":"2024-12-18T22:53:43.325Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/epri-dev%2FStorageVET/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-10-04T00:04:00.801Z","repositories_count":5979008,"commits_count":916576296,"contributors_count":35367212,"owners_count":1084017,"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":"epri-dev/StorageVET","html_url":"https://github.com/epri-dev/StorageVET","last_synced_at":"2025-04-10T04:30:28.940Z","status":"error","issues_count":6,"pull_requests_count":10,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":5420797.6,"issues_closed_count":0,"pull_requests_closed_count":10,"pull_request_authors_count":2,"issue_authors_count":4,"avg_comments_per_issue":0.5,"avg_comments_per_pull_request":0.3,"merged_pull_requests_count":6,"bot_issues_count":0,"bot_pull_requests_count":9,"past_year_issues_count":1,"past_year_pull_requests_count":1,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":24.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":1.0,"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":0,"created_at":"2023-05-09T10:40:49.681Z","updated_at":"2025-09-01T12:06:46.902Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/epri-dev%2FStorageVET","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/epri-dev%2FStorageVET/issues","issue_labels_count":{},"pull_request_labels_count":{"dependencies":9},"issue_author_associations_count":{"NONE":6},"pull_request_author_associations_count":{"CONTRIBUTOR":9,"NONE":2},"issue_authors":{"khalida":3,"studyingc":1,"MClenchy":1,"invisibleroads":1},"pull_request_authors":{"dependabot[bot]":9,"gautha7":2},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-03T00:00:08.273Z","repositories_count":10054011,"issues_count":30898665,"pull_requests_count":92703059,"authors_count":10588296,"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":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[],"active_maintainers":[]},"events":{"total":{"CreateEvent":1},"last_year":{"CreateEvent":1}},"keywords":[],"dependencies":[{"ecosystem":"pypi","filepath":"requirements-dev.txt","sha":null,"kind":"manifest","created_at":"2022-09-07T08:50:50.682Z","updated_at":"2022-09-07T08:50:50.682Z","repository_link":"https://github.com/epri-dev/StorageVET/blob/master/requirements-dev.txt","dependencies":[{"id":4086947171,"package_name":"pytest","ecosystem":"pypi","requirements":"===6.2.2","direct":true,"kind":"development","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2022-09-07T08:50:50.830Z","updated_at":"2022-09-07T08:50:50.830Z","repository_link":"https://github.com/epri-dev/StorageVET/blob/master/requirements.txt","dependencies":[{"id":4086947177,"package_name":"cvxopt","ecosystem":"pypi","requirements":"==1.2.5","direct":true,"kind":"runtime","optional":false},{"id":4086947178,"package_name":"cvxpy","ecosystem":"pypi","requirements":"==1.0.25","direct":true,"kind":"runtime","optional":false},{"id":4086947179,"package_name":"cycler","ecosystem":"pypi","requirements":"==0.10.0","direct":true,"kind":"runtime","optional":false},{"id":4086947180,"package_name":"dill","ecosystem":"pypi","requirements":"==0.3.2","direct":true,"kind":"runtime","optional":false},{"id":4086947181,"package_name":"ecos","ecosystem":"pypi","requirements":"==2.0.7.post1","direct":true,"kind":"runtime","optional":false},{"id":4086947182,"package_name":"fastcache","ecosystem":"pypi","requirements":"==1.1.0","direct":true,"kind":"runtime","optional":false},{"id":4086947183,"package_name":"Flask","ecosystem":"pypi","requirements":"==1.1.2","direct":true,"kind":"runtime","optional":false},{"id":4086947184,"package_name":"flask_cors","ecosystem":"pypi","requirements":"==3.0.8","direct":true,"kind":"runtime","optional":false},{"id":4086947185,"package_name":"future","ecosystem":"pypi","requirements":"==0.18.2","direct":true,"kind":"runtime","optional":false},{"id":4086947186,"package_name":"importlib-metadata","ecosystem":"pypi","requirements":"==1.7.0","direct":true,"kind":"runtime","optional":false},{"id":4086947187,"package_name":"kiwisolver","ecosystem":"pypi","requirements":"==1.2.0","direct":true,"kind":"runtime","optional":false},{"id":4086947188,"package_name":"matplotlib","ecosystem":"pypi","requirements":"==3.1.3","direct":true,"kind":"runtime","optional":false},{"id":4086947189,"package_name":"multiprocess","ecosystem":"pypi","requirements":"==0.70.10","direct":true,"kind":"runtime","optional":false},{"id":4086947190,"package_name":"numpy","ecosystem":"pypi","requirements":"==1.19.1","direct":true,"kind":"runtime","optional":false},{"id":4086947191,"package_name":"osqp","ecosystem":"pypi","requirements":"==0.6.1","direct":true,"kind":"runtime","optional":false},{"id":4086947192,"package_name":"pandas","ecosystem":"pypi","requirements":"==1.0.5","direct":true,"kind":"runtime","optional":false},{"id":4086947193,"package_name":"Pillow","ecosystem":"pypi","requirements":"==7.2.0","direct":true,"kind":"runtime","optional":false},{"id":4086947194,"package_name":"prettytable","ecosystem":"pypi","requirements":"==0.7.2","direct":true,"kind":"runtime","optional":false},{"id":4086947195,"package_name":"pyparsing","ecosystem":"pypi","requirements":"==2.4.7","direct":true,"kind":"runtime","optional":false},{"id":4086947196,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"==2.8.1","direct":true,"kind":"runtime","optional":false},{"id":4086947197,"package_name":"pytz","ecosystem":"pypi","requirements":"==2020.1","direct":true,"kind":"runtime","optional":false},{"id":4086947198,"package_name":"rainflow","ecosystem":"pypi","requirements":"==3.0.0","direct":true,"kind":"runtime","optional":false},{"id":4086947199,"package_name":"scipy","ecosystem":"pypi","requirements":"==1.5.2","direct":true,"kind":"runtime","optional":false},{"id":4086947200,"package_name":"scs","ecosystem":"pypi","requirements":"==2.1.2","direct":true,"kind":"runtime","optional":false},{"id":4086947201,"package_name":"six","ecosystem":"pypi","requirements":"==1.15.0","direct":true,"kind":"runtime","optional":false},{"id":4086947202,"package_name":"toolz","ecosystem":"pypi","requirements":"==0.10.0","direct":true,"kind":"runtime","optional":false},{"id":4086947203,"package_name":"xmltodict","ecosystem":"pypi","requirements":"==0.12.0","direct":true,"kind":"runtime","optional":false},{"id":4086947204,"package_name":"xlrd","ecosystem":"pypi","requirements":"==1.2.0","direct":true,"kind":"runtime","optional":false},{"id":4086947205,"package_name":"zipp","ecosystem":"pypi","requirements":"==3.1.0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2024-11-05T23:44:09.277Z","updated_at":"2024-11-05T23:44:09.277Z","repository_link":"https://github.com/epri-dev/StorageVET/blob/master/setup.py","dependencies":[]}],"score":5.6204008657171505,"created_at":"2023-09-11T14:52:07.751Z","updated_at":"2025-10-16T01:31:54.919Z","avatar_url":"https://github.com/epri-dev.png","language":"Python","category":"Energy Systems","sub_category":"Energy System Modeling Frameworks","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"# StoragetVET 2.0\n\nStorageVET 2.0 is a valuation model for analysis of energy storage technologies and some other energy resources paired with storage. The tool can be used as a standalone model, or integrated with other power system models, thanks to its open-source Python framework. Download the executable environment and learn more at https://www.storagevet.com.\n\n## Getting Started\n\nThese instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.\n\n### Prerequisites \u0026 Installing\n\n#### 1. Install [Anaconda](https://www.anaconda.com/download/) for python 3.**\n\n#### 2. Open Anaconda Prompt\n\n#### 3. Activate Python 3.8 environment\n\n    It is recommended that the latest Python 3.8 version be used. As of this writing, that version is Python 3.8.16\n    We give the user 2 routes to create a python environment for python 3.8.16\n   \u003eMost Windows users have success with the Conda route.\n\n    Each route results in a siloed python environment, but with different properties.\n    Choose the conda OR pip route and stick to it. Commands are not interchangeable.\n    \u003ePlease remember the route which created the python environment in order to activate it again later.\n   \u003e **You will need to activate the python environment to run the model, always.**\n\n    **Conda Route - Recommended route for Windows OS**\n\nNote that the python version is specified, meaning conda does not have to be associated with a python 3.8\n```\nconda create -n storagevet-venv python=3.8.16\nconda activate storagevet-venv\n```\n\n**Pip Route**\n\n    If you have Python 3.8.16 installed directly on your computer, then we recommend trying this route.\n   \u003eThis route lets you to open the prompt of your choice.\nNote that pip should be associated to a python 3.8 installation\n\nOn Linux/Mac\n\n```\npip install virtualenv\nvirtualenv storagevet-venv\nsource storagevet-venv/bin/activate\n```\nOn Windows\n\n```\npip install virtualenv\nvirtualenv storagevet-venv\n\"./storagevet-venv/Scripts/activate\"\n```\n\n#### 3. Install project dependencies\n\n**Conda Route**\n```\npip install setuptools==52.0.0\nconda install conda-forge::blas=*=openblas --file requirements.txt --file requirements-dev.txt\npip install numpy_financial==1.0.0\n```\n\n**Pip Route**\n```\npip install setuptools==52.0.0\npip install -r requirements.txt -r requirements-dev.txt\npip install numpy_financial==1.0.0\n```\n\n## Running the tests\n\nTo run tests, activate Python environment. Then enter the following into your terminal:\n```\npython -m pytest test\n```\n\n## Deployment\n\nTo use this project as a dependency in your own, clone this repo directly into the root of your project.\nOpen terminal or command prompt from your project root, and input the following command:\n```\npip install -e ./storagevet\n```\n\n## Versioning\n\nFor the versions available, please\nsee the [list of releases](https://github.com/epri-dev/StorageVET/releases) on out GitHub repository.\nThis is version 1.2.3\n\n## Authors\n\n* **Miles Evans**\n* **Andres Cortes**\n* **Halley Nathwani**\n* **Ramakrishnan Ravikumar**\n* **Evan Giarta**\n* **Thien Nguyen**\n* **Micah Botkin-Levy**\n* **Yekta Yazar**\n* **Kunle Awojinrin**\n* **Giovanni Damato**\n* **Andrew Etringer**\n\n## License\n\nThis project is licensed under the BSD (3-clause) License - see the [LICENSE.txt](./LICENSE.txt) file for details\n\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["archiving","transforms","measur","generic","optimize","observation","compose","conversion","projection","animals"],"project_url":"https://ost.ecosyste.ms/api/v1/projects/19875","html_url":"https://ost.ecosyste.ms/projects/19875"}