PV Free
A public API for PV modeling parameters.
https://github.com/BreakingBytes/pvfree
Category: Renewable Energy
Sub Category: Photovoltaics and Solar Energy
Keywords
api python solar-energy
Keywords from Contributors
transforms archiving measur animals conversion observation optimize compose projection generic
Last synced: about 3 hours ago
JSON representation
Repository metadata
Free PV API
- Host: GitHub
- URL: https://github.com/BreakingBytes/pvfree
- Owner: BreakingBytes
- License: bsd-2-clause
- Created: 2015-02-28T08:09:30.000Z (about 10 years ago)
- Default Branch: main
- Last Pushed: 2025-04-22T04:41:36.000Z (9 days ago)
- Last Synced: 2025-04-25T12:04:55.955Z (5 days ago)
- Topics: api, python, solar-energy
- Language: Python
- Homepage: https://pvfree.azurewebsites.net/
- Size: 302 KB
- Stars: 22
- Watchers: 7
- Forks: 5
- Open Issues: 6
- Releases: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
readme.md
PV Free
A public API for PV modeling parameters and pvlib API for learning about solar.
Announcements
2025-03-22: Now that ElephantSQL has reached its end-of-life, and the Aiven migration is working as expected, the dev website deployed
at AlwaysData has been terminated. Please use https://pvfree.azurewebsites.net/ only.
Hosting
pvfree is hosted at Microsoft Azure Cloud App service.
Please use https://pvfree.azurewebsites.net/ to get module and inverter parameters for pvlib and to learn about solar energy modeling.
The pvfree database is hosted at Aiven using PostgreSQL.
Contributing
The pytest.ini
file is set to run using DJANGO.SETTINGS_MODULE=pvfree.settings.dev
and find all tests automatically,
to allow you to use just the pytest
command instead of python manage.py test testdir --settings pvfree.settings.dev
.
Usage
Browsing to
pvfree.azurewebsites.net/api/v1/pvinverter/
will display a JSON string with the first 20 records. The endpoint and query
string to obtain the next set
api/pvinverter/?limit=20&offset=20
is contained in the next
key of the string as are the endpoints for each
inverter. Note: the query string ?format=json
is only necessary when using the API url directly in a browser to display the response.
Tastypie
The API is generated by the Tastypie django extension. Add the following endpoints to the base URL, https://pvfree.azurewebsites.net/
:
-
Get first 20 pvinverters.
api/pvinverter/
-
Get first pvinverter.
api/pvinverter/1/
-
Get pvinverter set containing #'s 2, 3, 5, and 10.
api/pvinverter/set/2;3;5;10/
-
Get 100 pvinverters starting from pvinverter # 500.
api/pvinverter/?limit=100&offset=500
-
Get pvinverter database schema.
api/pvinverter/schema/
Python Requests
Python has several libraries for interacting with URLs. The Requests package is available from PyPI.
>>> import requests
>>> response = requests.get('https://pvfree.azurewebsites.net/api/v1/pvinverter/set/1;3;5/')
>>> response
<Response [200]>
>>> response.status_code
200
>>> response.content
{"objects": [{"C0": -2.48104842861e-05, "C1": -9.0149429405099999e-05, "C2": 0.00066889632690700005, "C3": -0.018880466688599998, "Idcmax": 10.0, "MPPT_hi": 50.0, "MPPT_low": 20.0, "Paco": 250.0, "Pdco": 259.52205054799998, "Pnt": 0.02, "Pso": 1.7716142241299999, "Sandia_ID": 1399, "Tamb_low": -40.0, "Tamb_max": 85.0, "Vaco": 208.0, "Vdcmax": 65.0, "Vdco": 40.242603174599999, "id": 1, "manufacturer": "ABB", "name": "MICRO-0.25-I-OUTD-US-208", "numberMPPTChannels": 1, "resource_uri": "/api/v1/pvinverter/1/", "source": "CEC", "vintage": "2014-01-01", "weight": 1.6499999999999999}, ...]}
Owner metadata
- Name: Breaking Bytes
- Login: BreakingBytes
- Email: breaking-bytes@alwaysdata.net
- Kind: organization
- Description:
- Website: http://breakingbytes.github.io/
- Location: Oakland, CA
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/1437576?v=4
- Repositories: 8
- Last ynced at: 2024-04-16T02:52:05.522Z
- Profile URL: https://github.com/BreakingBytes
GitHub Events
Total
- Issues event: 13
- Watch event: 2
- Delete event: 8
- Issue comment event: 15
- Push event: 35
- Gollum event: 40
- Pull request event: 36
- Create event: 7
Last Year
- Issues event: 13
- Watch event: 2
- Delete event: 8
- Issue comment event: 15
- Push event: 35
- Gollum event: 40
- Pull request event: 36
- Create event: 7
Committers metadata
Last synced: 8 days ago
Total Commits: 306
Total Committers: 2
Avg Commits per committer: 153.0
Development Distribution Score (DDS): 0.039
Commits in past year: 77
Committers in past year: 2
Avg Commits per committer in past year: 38.5
Development Distribution Score (DDS) in past year: 0.065
Name | Commits | |
---|---|---|
Mark Mikofski | b****o@y****m | 294 |
dependabot[bot] | 4****] | 12 |
Committer domains:
Issue and Pull Request metadata
Last synced: 1 day ago
Total issues: 21
Total pull requests: 46
Average time to close issues: 7 months
Average time to close pull requests: 28 days
Total issue authors: 1
Total pull request authors: 2
Average comments per issue: 0.62
Average comments per pull request: 0.28
Merged pull request: 41
Bot issues: 0
Bot pull requests: 17
Past year issues: 5
Past year pull requests: 21
Past year average time to close issues: 11 days
Past year average time to close pull requests: 7 days
Past year issue authors: 1
Past year pull request authors: 2
Past year average comments per issue: 0.6
Past year average comments per pull request: 0.24
Past year merged pull request: 19
Past year bot issues: 0
Past year bot pull requests: 7
Top Issue Authors
- mikofski (21)
Top Pull Request Authors
- mikofski (29)
- dependabot[bot] (17)
Top Issue Labels
- bug (3)
- enhancement (2)
- help wanted (2)
Top Pull Request Labels
- dependencies (17)
- python (6)
- github_actions (1)
Dependencies
- bokeh ==2.0.1
- defusedxml ==0.6.0
- dj_database_url ==0.5.0
- django ==1.11.29
- django_tastypie ==0.14.3
- future ==0.18.2
- gunicorn ==20.0.4
- jinja2 ==2.11.3
- lxml ==4.6.5
- nose ==1.3.7
- numpy ==1.16.2
- openpyxl ==3.0.3
- pandas ==0.24.2
- psycopg2 ==2.8.5
- pvlib ==0.6.1
- pytest ==5.4.1
- pytest-django ==3.9.0
- python_dateutil ==2.8.1
- pytz ==2019.3
- pyyaml ==5.4
- scipy ==1.2.1
- six ==1.14.0
- tables ==3.6.1
- whitenoise ==5.0.1
- actions/checkout v2 composite
- actions/download-artifact v2 composite
- actions/setup-python v1 composite
- actions/upload-artifact v2 composite
- azure/webapps-deploy v2 composite
- actions/checkout v4 composite
- actions/setup-python v5 composite
- postgres * docker
Score: 4.025351690735149