A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

Pyra

Automated EM27/SUN Greenhouse Gas Measurement Software.
https://github.com/tum-esm/pyra

Category: Emissions
Sub Category: Emission Observation and Modeling

Keywords

autonomous bruker camtracker cli climate docusaurus em27 emissions monitoring mypy opus python sensor spectroscopy tailwindcss tauri typescript

Keywords from Contributors

click spectrometry pdm

Last synced: about 12 hours ago
JSON representation

Repository metadata

Pyra: Automated EM27/SUN Greenhouse Gas Measurements

README.md

Pyra: Automated EM27/SUN Greenhouse Gas Measurements

Source Code: https://github.com/tum-esm/pyra (this website)
Documentation: https://pyra.esm.ei.tum.de/docs
Contributor Guide: https://pyra.esm.ei.tum.de/docs/contributor-guide/becoming-a-contributor




GitHub License




What is Pyra?

Pyra (name based on Python and Ra) is a software that automates the operation of EM27/SUN measurement setups. Operating EM27/SUN devices requires a lot of human interaction. Pyra makes it possible to operate these devices 24/7 autonomously.

Pyra has enabled us, the Professorship of Environmental Sensing and Modeling at the Technical University of Munich to collect continuous data from 5 stations around the city of Munich since 2019 using MUCCnet. Versions 1 to 3 of Pyra have been experimental tools improved internally since 2016. The goal of version 4 is to make Pyra even more stable, easy to understand and extend, and usable by the whole EM27/SUN community.

The software is licensed under GPLv3 and is open-sourced here, on GitHub: https://github.com/tum-esm/pyra. Pyra has been published in the Journal of Open Source Software (JOSS): https://doi.org/10.21105/joss.05131.

Citing Pyra

Whenever using data generated by Pyra, please make sure to cite the following three papers. With the first and second one (MUCCnet), we developed the versions 1 to 3 of Pyra internally. With the third one (Pyra), we turned Pyra into a reusable open-source software.

APA Style:

Heinle, L. and Chen, J.: Automated enclosure and protection system for compact solar-tracking spectrometers, Atmos. Meas. Tech., 11, 2173–2185, https://doi.org/10.5194/amt-11-2173-2018, 2018.

Dietrich, F., Chen, J., Voggenreiter, B., Aigner, P., Nachtigall, N., and Reger, B.: MUCCnet: Munich Urban Carbon Column network, Atmos. Meas. Tech., 14, 1111–1126, https://doi.org/10.5194/amt-14-1111-2021, 2021.

Aigner, P.* and Makowski, M.* and Luther, A. and Dietrich, F. and Chen, J. (2023). Pyra: Automated EM27/SUN Greenhouse Gas Measurement Software. Journal of Open Source Software, 8(84), 5131. https://doi.org/10.21105/joss.05131

BibTex:

@article{Heinle2018,
    autho = {Heinle, L. and Chen, J.},
    title = {Automated enclosure and protection system for compact solar-tracking spectrometers},
    journal = {Atmospheric Measurement Techniques},
    volume = {11},
    year = {2018},
    number = {4},
    pages = {2173--2185},
    url = {https://amt.copernicus.org/articles/11/2173/2018/},
    doi = {10.5194/amt-11-2173-2018}
}
@article{Dietrich2021,
    author = {Dietrich, F. and Chen, J. and Voggenreiter, B. and Aigner, P. and Nachtigall, N. and Reger, B.},
    title = {MUCCnet: Munich Urban Carbon Column network},
    journal = {Atmospheric Measurement Techniques},
    volume = {14},
    year = {2021},
    number = {2},
    pages = {1111--1126},
    url = {https://amt.copernicus.org/articles/14/1111/2021/},
    doi = {10.5194/amt-14-1111-2021}
}
@article{Aigner2023,
    doi = {10.21105/joss.05131},
    url = {https://doi.org/10.21105/joss.05131},
    year = {2023},
    publisher = {The Open Journal},
    volume = {8},
    number = {84},
    pages = {5131},
    author = {Patrick Aigner* and Moritz Makowski* and Andreas Luther and Florian Dietrich and Jia Chen},
    title = {Pyra: Automated EM27/SUN Greenhouse Gas Measurement Software},
    journal = {Journal of Open Source Software}
}

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 6 days ago

Total Commits: 1,807
Total Committers: 5
Avg Commits per committer: 361.4
Development Distribution Score (DDS): 0.167

Commits in past year: 311
Committers in past year: 1
Avg Commits per committer in past year: 311.0
Development Distribution Score (DDS) in past year: 0.0

Name Email Commits
dostuffthatmatters m****z@d****v 1506
patrickaigner p****n@g****m 263
ESM Technical User e****r@p****m 35
Florian Dietrich f****h@t****e 2
pyra_developer m****8@g****m 1

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 151
Total pull requests: 23
Average time to close issues: 6 months
Average time to close pull requests: 21 days
Total issue authors: 6
Total pull request authors: 3
Average comments per issue: 0.88
Average comments per pull request: 1.74
Merged pull request: 17
Bot issues: 0
Bot pull requests: 1

Past year issues: 34
Past year pull requests: 3
Past year average time to close issues: 4 months
Past year average time to close pull requests: about 18 hours
Past year issue authors: 3
Past year pull request authors: 2
Past year average comments per issue: 0.29
Past year average comments per pull request: 2.33
Past year merged pull request: 1
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/tum-esm/pyra

Top Issue Authors

  • dostuffthatmatters (129)
  • patrickjaigner (16)
  • csam1853 (2)
  • waterdropchen (2)
  • nmstreethran (1)
  • willmorrison1 (1)

Top Pull Request Authors

  • dostuffthatmatters (21)
  • patrickjaigner (1)
  • dependabot[bot] (1)

Top Issue Labels

  • status:implemented (115)
  • scope:camtracker (24)
  • backlog (18)
  • scope:ui (16)
  • scope:opus (15)
  • scope:helios (11)
  • scope:upload (11)
  • scope:plc (10)
  • tiny (10)
  • scope:exceptions (5)
  • high-priority (4)
  • status:in-progress (3)
  • status:backlog (2)
  • needs-triage (1)
  • status:planned (1)
  • upstream (1)
  • status:deferred (1)
  • scope:docs (1)

Top Pull Request Labels

  • scope:camtracker (3)
  • status:in-progress (1)
  • status:implemented (1)

Dependencies

packages/ui/src-tauri/Cargo.lock cargo
  • 327 dependencies
packages/docs/package.json npm
  • @docusaurus/module-type-aliases ^2.1.0 development
  • @tsconfig/docusaurus ^1.0.5 development
  • autoprefixer ^10.4.8 development
  • postcss ^8.4.16 development
  • tailwindcss ^3.1.8 development
  • typescript ^4.7.4 development
  • @docusaurus/core ^2.1.0
  • @docusaurus/preset-classic ^2.1.0
  • @mdx-js/react ^1.6.22
  • clsx ^1.2.1
  • mdx-mermaid ^1.3.2
  • mermaid ^9.1.6
  • prism-react-renderer ^1.3.5
  • react ^17.0.2
  • react-dom ^17.0.2
packages/docs/yarn.lock npm
  • 1099 dependencies
packages/ui/package.json npm
  • @tailwindcss/forms 0.5.2 development
  • @tauri-apps/cli 1.0.0 development
  • @types/deep-diff ^1.0.1 development
  • @types/lodash 4.14.182 development
  • @types/moment ^2.13.0 development
  • @types/node ^18.0.0 development
  • @types/react 18.0.12 development
  • @types/react-dom 18.0.5 development
  • @types/socket.io-client ^3.0.0 development
  • @vitejs/plugin-react 1.3.0 development
  • autoprefixer 10.4.7 development
  • postcss 8.4.14 development
  • tailwindcss 3.1.2 development
  • tilg 0.1.1 development
  • typescript 4.7.3 development
  • vite 2.9.13 development
  • @reduxjs/toolkit ^1.8.2
  • @tauri-apps/api 1.0.1
  • deep-diff ^1.0.2
  • lodash 4.17.21
  • moment ^2.29.4
  • react 18.1.0
  • react-dom 18.1.0
  • react-hot-toast ^2.2.0
  • react-redux ^8.0.2
  • socket.io-client ^4.5.1
packages/ui/yarn.lock npm
  • 206 dependencies
poetry.lock pypi
  • atomicwrites 1.4.0 develop
  • attrs 21.4.0 develop
  • black 22.3.0 develop
  • coverage 6.4.4 develop
  • deepdiff 5.8.1 develop
  • iniconfig 1.1.1 develop
  • mypy 0.971 develop
  • mypy-extensions 0.4.3 develop
  • ordered-set 4.1.0 develop
  • pathspec 0.9.0 develop
  • platformdirs 2.5.2 develop
  • pluggy 1.0.0 develop
  • py 1.11.0 develop
  • pytest 7.1.2 develop
  • pytest-cov 3.0.0 develop
  • tomli 2.0.1 develop
  • types-cryptography 3.3.22 develop
  • types-invoke 1.7.3 develop
  • types-paramiko 2.11.3 develop
  • types-psutil 5.9.5 develop
  • astropy 5.0.4
  • bcrypt 3.2.2
  • cerberus 1.3.4
  • cffi 1.15.1
  • click 8.1.3
  • colorama 0.4.5
  • cryptography 37.0.4
  • fabric 2.7.1
  • filelock 3.6.0
  • invoke 1.7.1
  • jdcal 1.4.1
  • numpy 1.22.3
  • opencv-python 4.5.5.64
  • packaging 21.3
  • paramiko 2.11.0
  • pathlib2 2.3.7.post1
  • psutil 5.9.1
  • pycparser 2.21
  • pydantic 1.9.2
  • pyerfa 2.0.0.1
  • pynacl 1.5.0
  • pyparsing 3.0.9
  • python-snap7 1.1
  • pywin32 303
  • pyyaml 6.0
  • six 1.16.0
  • tqdm 4.64.0
  • typing-extensions 4.3.0
pyproject.toml pypi
  • black 22.3.0 develop
  • mypy ^0.971 develop
  • pytest 7.1.2 develop
  • pytest-cov ^3.0.0 develop
  • types-invoke ^1.7.3 develop
  • types-paramiko ^2.11.3 develop
  • types-psutil ^5.9.5 develop
  • Cerberus 1.3.4
  • astropy 5.0.4
  • click 8.1.3
  • colorama ^0.4.5
  • deepdiff ^5.8.1
  • fabric ^2.7.1
  • filelock 3.6.0
  • jdcal 1.4.1
  • numpy 1.22.3
  • opencv-python 4.5.5.64
  • psutil 5.9.1
  • pydantic ^1.9.2
  • python ^3.10
  • python-snap7 1.1
  • pywin32 303
  • tqdm ^4.64.0
.github/workflows/build-on-prerelease.yml actions
  • actions-rs/toolchain v1 composite
  • actions/checkout v2 composite
  • actions/setup-node v1 composite
  • tauri-apps/tauri-action v0 composite
.github/workflows/build-on-release.yml actions
  • actions-rs/toolchain v1 composite
  • actions/checkout v2 composite
  • actions/setup-node v1 composite
  • tauri-apps/tauri-action v0 composite
.github/workflows/test-python-codebase-on-main.yml actions
  • actions/cache v3 composite
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
  • snok/install-poetry v1 composite
.github/workflows/test-typescript-codebase-on-main.yml actions
  • actions/checkout v3 composite
  • actions/setup-node v3 composite
packages/ui/src-tauri/Cargo.toml cargo

Score: 4.941642422609304