QSDsan
A package for the quantitative sustainable design of sanitation and resource recovery systems.
https://github.com/qsd-group/qsdsan
Category: Industrial Ecology
Sub Category: Life Cycle Assessment
Keywords
dynamic-simulations life-cycle-assessment process-modeling quantitative-sustainable-design resource-recovery sanitation sustainability-analysis techno-economic-analysis
Keywords from Contributors
qsdsan multi-criteria-decision-analysis biochemical-process bioprocess biorefinery centrifuge chemical-engineering distillation fermentation flash
Last synced: about 19 hours ago
JSON representation
Repository metadata
Quantitative Sustainable Design (QSD) of sanitation and resource recovery systems.
- Host: GitHub
- URL: https://github.com/qsd-group/qsdsan
- Owner: QSD-Group
- License: other
- Created: 2020-09-29T15:53:46.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2025-12-02T22:26:20.000Z (23 days ago)
- Last Synced: 2025-12-09T04:22:24.158Z (17 days ago)
- Topics: dynamic-simulations, life-cycle-assessment, process-modeling, quantitative-sustainable-design, resource-recovery, sanitation, sustainability-analysis, techno-economic-analysis
- Language: Python
- Homepage: https://qsdsan.com
- Size: 59.1 MB
- Stars: 36
- Watchers: 5
- Forks: 18
- Open Issues: 3
- Releases: 0
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGELOG.rst
- Contributing: CONTRIBUTING.rst
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
README.rst
====================================================================================
QSDsan: Quantitative Sustainable Design for Sanitation and Resource Recovery Systems
====================================================================================
.. License
.. image:: https://img.shields.io/pypi/l/qsdsan?color=blue&logo=UIUC&style=flat
:target: https://github.com/QSD-Group/QSDsan/blob/main/LICENSE.txt
.. Tested Python version
.. image:: https://img.shields.io/pypi/pyversions/qsdsan?style=flat
:target: https://pypi.python.org/pypi/qsdsan
.. PyPI version
.. image:: https://img.shields.io/pypi/v/qsdsan?style=flat&color=blue
:target: https://pypi.org/project/qsdsan
.. DOI
.. image:: https://img.shields.io/badge/DOI-10.1039%2Fd2ew00455k-blue?style=flat
:target: https://doi.org/10.1039/d2ew00455k
.. Documentation build
.. image:: https://readthedocs.org/projects/qsdsan/badge/?version=latest
:target: https://qsdsan.readthedocs.io/en/latest
.. GitHub test and coverage of the main branch
.. image:: https://github.com/QSD-Group/QSDsan/actions/workflows/build-coverage.yml/badge.svg?branch=main
:target: https://github.com/QSD-Group/QSDsan/actions/workflows/build-coverage.yml
.. Codecov
.. image:: https://codecov.io/gh/QSD-Group/QSDsan/branch/main/graph/badge.svg?token=Z1CASBXEOE
:target: https://codecov.io/gh/QSD-Group/QSDsan
.. Binder launch of tutorials
.. image:: ./docs/source/images/custom_binder_logo.svg
:target: https://mybinder.org/v2/gh/QSD-Group/QSDsan-env/main?urlpath=git-pull%3Frepo%3Dhttps%253A%252F%252Fgithub.com%252FQSD-group%252FQSDsan%26urlpath%3Dtree%252FQSDsan%252Fdocs%252Fsource%252Ftutorials%26branch%3Dmain
.. Email subscription form
.. image:: https://img.shields.io/badge/news-subscribe-F3A93C?style=flat&logo=rss
:target: https://groups.webservices.illinois.edu/subscribe/154591
.. Event calendar
.. image:: https://img.shields.io/badge/events-calendar-F3A93C?style=flat&logo=google%20calendar
:target: https://qsdsan.readthedocs.io/en/latest/Events.html
.. YouTube video
.. image:: https://img.shields.io/endpoint?color=%23ff0000&label=YouTube%20 @qsd-group&url=https%3A%2F%2Fyoutube-channel-badge-blond.vercel.app%2Fapi%2Fvideos
:target: https://www.youtube.com/@qsd-group
.. Code of Conduct
.. image:: https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg
:target: https://qsdsan.readthedocs.io/en/latest/CODE_OF_CONDUCT.html
.. AppVeyor test of the stable branch, not in active use
..
.. image:: https://img.shields.io/appveyor/build/yalinli2/QSDsan/main?label=build-stable&logo=appveyor
:target: https://github.com/QSD-Group/QSDsan/tree/stable
|
.. contents::
|
What is ``QSDsan``?
-------------------
``QSDsan`` is an open-source, community-led platform for the quantitative sustainable design (QSD) of sanitation and resource recovery systems [1]_. It is one of a series of platforms that are being developed for the execution of QSD - a methodology for the research, design, and deployment of technologies and inform decision-making [2]_. It leverages the structure and modules developed in the `BioSTEAM `_ platform [3]_ with additional functions tailored to sanitation processes.
As an open-source and impact-driven platform, QSDsan aims to identify configuration combinations, systematically probe interdependencies across technologies, and identify key sensitivities to contextual assumptions through the use of quantitative sustainable design methods (techno-economic analysis and life cycle assessment and under uncertainty).
All systems developed with ``QSDsan`` are included in the package `EXPOsan `_ - exposition of sanitation and resource recovery systems.
Additionally, another package, `DMsan `_ (decision-making for sanitation and resource recovery systems), is being developed for decision-making among multiple dimensions of sustainability with consideration of location-specific contextual parameters.
Installation
------------
The easiest way is through ``pip``, in command-line interface (e.g., Anaconda prompt, terminal):
.. code::
pip install qsdsan
If you need to upgrade:
.. code::
pip install -U qsdsan
or for a specific version (replace X.X.X with the version number):
.. code::
pip install qsdsan==X.X.X
If you want to install the latest GitHub version at the `main branch `_ (note that you can still use the ``-U`` flag for upgrading):
.. code::
pip install git+https://github.com/QSD-Group/QSDsan.git
.. note::
If this doesn't give you the newest ``qsdsan``, try ``pip uninstall qsdsan`` first.
Also, you may need to update some ``qsdsan``'s dependency package (e.g., ' ``biosteam`` and ``thermosteam``) versions in order for the new ``qsdsan`` to run.
or other fork and/or branch (replace ```` and ```` with the desired fork and branch names)
.. code::
pip install git+https://github.com//QSDsan.git@
You can also download the package from `PyPI `_.
Note that development of this package is currently under initial stage with limited backward compatibility, please feel free to `submit an issue `_ for any questions regarding package upgrading.
If you want to contribute to ``QSDsan``, please follow the steps in the `Contributing Guidelines `_ section of the documentation to clone the repository. If you find yourself struggle with the installation of QSDsan/setting up the environment, this extended version of `installation instructions `_ might be helpful to you.
Documentation
-------------
You can find tutorials and documents at:
https://qsdsan.readthedocs.io
All tutorials are written using Jupyter Notebook, you can run your own Jupyter environment, or you can click the ``launch binder`` badge on the top to launch the environment in your browser.
For each of these tutorials, we are also recording videos where one of the QSD group members will go through the tutorial step-by-step. We are gradually releasing these videos on our `YouTube channel `_ so subscribe to receive updates!
About the Authors
-----------------
Please refer to `Contributors `_ section for a list of contributors.
Contributing
------------
Please refer to the `Contributing Guidelines `_ section of the documentation for instructions and guidelines.
Stay Connected
--------------
If you would like to receive news related to the QSDsan platform, you can subscribe to email updates using `this form `_ (don't worry, you will be able to unsubscribe :)). Thank you in advance for your interest!
QSDsan Events
-------------
We will keep this `calendar `_ up-to-date as we organize more events (office hours, workshops, etc.), click on the events in the calendar to see the details (including meeting links).
License Information
-------------------
Please refer to the ``LICENSE.txt`` for information on the terms & conditions for usage of this software, and a DISCLAIMER OF ALL WARRANTIES.
References
----------
.. [1] Li, Y.; Zhang, X.; Morgan, V.L.; Lohman, H.A.C.; Rowles, L.S.; Mittal, S.; Kogler, A.; Cusick, R.D.; Tarpeh, W.A.; Guest, J.S. QSDsan: An integrated platform for quantitative sustainable design of sanitation and resource recovery systems. Environ. Sci.: Water Res. Technol. 2022, 8 (10), 2289-2303. https://doi.org/10.1039/d2ew00455k.
.. [2] Li, Y.; Trimmer, J.T.; Hand, S.; Zhang, X.; Chambers, K.G.; Lohman, H.A.C.; Shi, R.; Byrne, D.M.; Cook, S.M.; Guest, J.S. Quantitative Sustainable Design (QSD): A Methodology for the Prioritization of Research, Development, and Deployment of Technologies. (Tutorial Review) Environ. Sci.: Water Res. Technol. 2022, 8 (11), 2439–2465. https://doi.org/10.1039/D2EW00431C.
.. [3] Cortés-Peña, Y.; Kumar, D.; Singh, V.; Guest, J.S. BioSTEAM: A Fast and Flexible Platform for the Design, Simulation, and Techno-Economic Analysis of Biorefineries under Uncertainty. ACS Sustainable Chem. Eng. 2020, 8 (8), 3302–3310. https://doi.org/10.1021/acssuschemeng.9b07040.
.. Custom launch badges: https://mybinder.readthedocs.io/en/latest/howto/badges.html
.. binder_badge: https://img.shields.io/badge/launch-binder%20%7C%20tutorial-579ACA.svg?logo=data:image/png;base64,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
Owner metadata
- Name: Quantitative Sustainable Design (QSD) Group
- Login: QSD-Group
- Email: quantitative.sustainable.design@gmail.com
- Kind: organization
- Description: Tools for quantitative sustainable design (QSD) to guide the research, development, and deployment of technologies and inform decision-making.
- Website:
- Location:
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/68925850?v=4
- Repositories: 5
- Last ynced at: 2023-03-08T04:29:41.725Z
- Profile URL: https://github.com/QSD-Group
GitHub Events
Total
- Create event: 9
- Commit comment event: 7
- Issues event: 7
- Watch event: 5
- Delete event: 3
- Issue comment event: 56
- Push event: 305
- Pull request review event: 1
- Pull request event: 10
- Fork event: 4
Last Year
- Create event: 6
- Commit comment event: 1
- Issues event: 4
- Watch event: 5
- Delete event: 2
- Issue comment event: 25
- Push event: 223
- Pull request event: 4
- Fork event: 4
Committers metadata
Last synced: 2 days ago
Total Commits: 1,991
Total Committers: 13
Avg Commits per committer: 153.154
Development Distribution Score (DDS): 0.479
Commits in past year: 58
Committers in past year: 4
Avg Commits per committer in past year: 14.5
Development Distribution Score (DDS) in past year: 0.362
| Name | Commits | |
|---|---|---|
| Yalin | z****i@g****m | 1038 |
| Joy Cheung | j****4@g****m | 522 |
| RaiSaumitra | 8****a | 286 |
| Smiti Mittal | 5****l | 33 |
| Ga-Yeong Kim | g****5@g****m | 32 |
| Victoria Morgan | v****n@i****u | 28 |
| Jianan Feng | j****2@i****u | 21 |
| haclohman | 6****n | 16 |
| lane-to | 9****o | 6 |
| Steiner | p****r@e****h | 4 |
| Yoel | y****s@g****m | 2 |
| BenGillen1998 | b****8@g****m | 2 |
| lsrowles | s****c@g****m | 1 |
Committer domains:
- illinois.edu: 2
- eawag.ch: 1
Issue and Pull Request metadata
Last synced: 3 months ago
Total issues: 58
Total pull requests: 77
Average time to close issues: 3 months
Average time to close pull requests: 13 days
Total issue authors: 11
Total pull request authors: 9
Average comments per issue: 2.76
Average comments per pull request: 1.52
Merged pull request: 70
Bot issues: 0
Bot pull requests: 0
Past year issues: 4
Past year pull requests: 9
Past year average time to close issues: 18 days
Past year average time to close pull requests: 2 days
Past year issue authors: 4
Past year pull request authors: 3
Past year average comments per issue: 0.5
Past year average comments per pull request: 3.56
Past year merged pull request: 9
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- yalinli2 (47)
- yoelcortes (2)
- vlmorgan93 (1)
- hccroll (1)
- aiical (1)
- joyxyz1994 (1)
- jbolorinos (1)
- pengxiao01 (1)
- GaYeongKim (1)
- Clubiy (1)
- mckfarm (1)
Top Pull Request Authors
- yalinli2 (48)
- joyxyz1994 (12)
- jiananf2 (6)
- yoelcortes (4)
- GaYeongKim (2)
- BenGillen1998 (2)
- philthestone (1)
- stetsonrowles (1)
- smitimittal (1)
Top Issue Labels
- enhancement (5)
- documentation (3)
- task list (3)
- good first issue (1)
Top Pull Request Labels
Package metadata
- Total packages: 3
-
Total downloads:
- pypi: 1,829 last-month
- Total dependent packages: 1 (may contain duplicates)
- Total dependent repositories: 1 (may contain duplicates)
- Total versions: 83
- Total maintainers: 1
proxy.golang.org: github.com/qsd-group/qsdsan
- Homepage:
- Documentation: https://pkg.go.dev/github.com/qsd-group/qsdsan#section-documentation
- Licenses: other
- Latest release: v1.4.3 (published 3 months ago)
- Last Synced: 2025-12-22T03:08:22.633Z (4 days ago)
- Versions: 10
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent packages count: 6.999%
- Average: 8.173%
- Dependent repos count: 9.346%
proxy.golang.org: github.com/QSD-Group/QSDsan
- Homepage:
- Documentation: https://pkg.go.dev/github.com/QSD-Group/QSDsan#section-documentation
- Licenses: other
- Latest release: v1.4.3 (published 3 months ago)
- Last Synced: 2025-12-22T03:08:22.739Z (4 days ago)
- Versions: 10
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent packages count: 6.999%
- Average: 8.173%
- Dependent repos count: 9.346%
pypi.org: qsdsan
Quantitative Sustainable Design for sanitation and resource recovery systems
- Homepage: https://github.com/QSD-Group/QSDsan
- Documentation: https://qsdsan.readthedocs.io
- Licenses: UIUC
- Latest release: 1.4.3 (published 3 months ago)
- Last Synced: 2025-12-22T03:08:20.755Z (4 days ago)
- Versions: 63
- Dependent Packages: 1
- Dependent Repositories: 1
- Downloads: 1,829 Last month
-
Rankings:
- Dependent packages count: 3.271%
- Forks count: 10.957%
- Stargazers count: 11.713%
- Average: 12.333%
- Downloads: 13.49%
- Dependent repos count: 22.233%
- Maintainers (1)
Dependencies
- actions/checkout v3 composite
- actions/setup-python v4 composite
- codecov/codecov-action v3 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- SALib >=1.4.5
- furo *
- ipywidgets *
- jupyterlab-widgets *
- matplotlib <=3.6.0
- nbsphinx *
- pandoc *
- seaborn *
- sphinx *
- sphinx-copybutton *
- sphinx-design *
- sympy >=1.8
- widgetsnbextension *
- SALib >=1.4.5
- biosteam >=2.36.1
- matplotlib >=3.3.2
- pandas >=1.3.2
- scikit-learn *
- scipy >=1.7.1
- seaborn *
- sympy >=1.8
- thermosteam >=0.32.0
Score: 13.741674548825259