kausal-paths

Kausal Paths to predict how the emissions of cities develop

https://github.com/kausaltech/kausal-paths

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.7%) to scientific vocabulary
Last synced: 11 months ago · JSON representation

Repository

Kausal Paths to predict how the emissions of cities develop

Basic Info
  • Host: GitHub
  • Owner: kausaltech
  • License: agpl-3.0
  • Language: Python
  • Default Branch: main
  • Size: 6.25 MB
Statistics
  • Stars: 7
  • Watchers: 5
  • Forks: 9
  • Open Issues: 14
  • Releases: 0
Created over 5 years ago · Last pushed 11 months ago
Metadata Files
Readme Contributing License Code of conduct

README.md

Kausal Paths

Kausal Paths is a tool for predicting the future emissions of cities based on historical emission data and various climate actions. Users can compare how emissions develop in different scenarios. Data is provided using a GraphQL API.

Installation

Development

In the project root directory, create and activate a Python virtual environment:

shell uv venv source .venv/bin/activate

Install the required Python packages:

shell uv sync

If you have access to the Kausal private extensions, you should configure the PyPI index URL in your .envrc file:

shell export UV_INDEX_KAUSAL_USERNAME=... export UV_INDEX_KAUSAL_PASSWORD=...

Then install the dependencies like this:

shell uv sync --extra kausal

If you need to run Jupyter notebooks, include the notebook dependency group:

shell uv sync --group notebook --extra kausal

Note for macOS users: If you run into issues installing python-snappy, install it separately first

brew install snappy CPPFLAGS="-I/opt/homebrew/include -L/opt/homebrew/lib" pip install python-snappy

Create a file called local_settings.py in your repository root with the following contents:

```python from paths.settings import BASE_DIR

DEBUG = True

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'paths', 'ATOMIC_REQUESTS': True, } } ```

Run migrations:

shell python manage.py migrate

Create a superuser:

You might need the following translations during the createsuperuser operation: käyttäjätunnus = username, sähköpostiosoite = e-mail

shell python manage.py createsuperuser

Compile the translation files:

shell python manage.py compilemessages

You can now run the backend:

shell python manage.py runserver

The GraphQL API is now available at http://127.0.0.1:8000/v1/graphql/.

Owner

  • Name: Kausal Tech
  • Login: kausaltech
  • Kind: organization
  • Email: info@kausal.tech
  • Location: Helsinki

We help cities bridge the gap between climate goals and actions.

GitHub Events

Total
  • Watch event: 1
  • Delete event: 99
  • Issue comment event: 76
  • Push event: 1,171
  • Pull request review comment event: 48
  • Pull request review event: 84
  • Pull request event: 163
  • Fork event: 2
  • Create event: 110
  • Commit comment event: 3
Last Year
  • Watch event: 1
  • Delete event: 99
  • Issue comment event: 76
  • Push event: 1,171
  • Pull request review comment event: 48
  • Pull request review event: 84
  • Pull request event: 163
  • Fork event: 2
  • Create event: 110
  • Commit comment event: 3

Committers

Last synced: 12 months ago

All Time
  • Total Commits: 2,718
  • Total Committers: 14
  • Avg Commits per committer: 194.143
  • Development Distribution Score (DDS): 0.602
Past Year
  • Commits: 997
  • Committers: 10
  • Avg Commits per committer: 99.7
  • Development Distribution Score (DDS): 0.641
Top Committers
Name Email Commits
Jouni Tuomisto j****o@k****h 1,081
Juha Yrjölä j****a@i****i 826
Michael Mechenich m****h@g****m 342
Bernhard Bliem b****d@b****z 176
Timo Tuominen t****n@g****m 145
Matias Wargelin m****n@k****h 91
Jan-Erik S. 6****u 29
Joe Smallwood j****d@k****h 11
Tero Tikkanen t****n@g****m 6
philippestolz 1****z 4
adinhodovic h****n@g****m 3
DeepL n****l@w****g 2
Lilia Sviridova s****a@g****m 1
samuelkwijaya-wong s****a@k****h 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 11
  • Total pull requests: 269
  • Average time to close issues: about 2 months
  • Average time to close pull requests: 14 days
  • Total issue authors: 3
  • Total pull request authors: 11
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.56
  • Merged pull requests: 197
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 200
  • Average time to close issues: N/A
  • Average time to close pull requests: 5 days
  • Issue authors: 1
  • Pull request authors: 9
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.64
  • Merged pull requests: 145
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • juyrjola (5)
  • terotik (5)
  • MWargelin (1)
Pull Request Authors
  • jtuomist (71)
  • tituomin (49)
  • Bhavatu (46)
  • MWargelin (41)
  • bbliem (23)
  • mechenich (19)
  • woodwoerk (10)
  • rominf (6)
  • ibrahim-string (2)
  • samuelkwijaya-wong (1)
  • lilia1891 (1)
Top Labels
Issue Labels
release (3)
Pull Request Labels
enhancement (2)

Dependencies

requirements-dev.in pypi
  • autopep8 * development
  • django-stubs * development
  • flake8 * development
  • graphene-stubs * development
  • ipython * development
  • mypy * development
  • pandas-stubs * development
  • pip-tools * development
  • pylint * development
  • pylint-django * development
  • types-orjson * development
requirements-dev.txt pypi
  • asgiref ==3.5.1 development
  • astroid ==2.11.4 development
  • asttokens ==2.0.5 development
  • autopep8 ==1.6.0 development
  • backcall ==0.2.0 development
  • click ==8.1.3 development
  • decorator ==5.1.1 development
  • dill ==0.3.4 development
  • django ==3.2.13 development
  • django-stubs ==1.10.1 development
  • django-stubs-ext ==0.4.0 development
  • executing ==0.8.3 development
  • flake8 ==4.0.1 development
  • graphene-stubs ==0.15 development
  • ipython ==8.3.0 development
  • isort ==5.10.1 development
  • jedi ==0.18.1 development
  • lazy-object-proxy ==1.7.1 development
  • matplotlib-inline ==0.1.3 development
  • mccabe ==0.6.1 development
  • mypy ==0.942 development
  • mypy-extensions ==0.4.3 development
  • pandas-stubs ==1.2.0.58 development
  • parso ==0.8.3 development
  • pep517 ==0.12.0 development
  • pexpect ==4.8.0 development
  • pickleshare ==0.7.5 development
  • pip-tools ==6.6.0 development
  • platformdirs ==2.5.2 development
  • prompt-toolkit ==3.0.29 development
  • ptyprocess ==0.7.0 development
  • pure-eval ==0.2.2 development
  • pycodestyle ==2.8.0 development
  • pyflakes ==2.4.0 development
  • pygments ==2.12.0 development
  • pylint ==2.13.8 development
  • pylint-django ==2.5.3 development
  • pylint-plugin-utils ==0.7 development
  • pytz ==2022.1 development
  • six ==1.16.0 development
  • sqlparse ==0.4.2 development
  • stack-data ==0.2.0 development
  • toml ==0.10.2 development
  • tomli ==2.0.1 development
  • traitlets ==5.1.1 development
  • types-orjson ==3.6.2 development
  • types-pytz ==2021.3.7 development
  • types-pyyaml ==6.0.7 development
  • typing-extensions ==4.2.0 development
  • wcwidth ==0.2.5 development
  • wheel ==0.37.1 development
  • wrapt ==1.14.1 development
requirements-kausal.txt pypi
  • kausal_paths_extensions ==0.4.1
requirements-prod.in pypi
  • uwsgi *
requirements-prod.txt pypi
  • uwsgi ==2.0.19.1
requirements.in pypi
  • Babel *
  • colored *
  • django *
  • django-cors-headers *
  • django-environ *
  • django-extensions *
  • django-modeltrans *
  • djangorestframework *
  • dvc-pandas *
  • factory-boy *
  • graphene-django *
  • graphene-django-optimizer *
  • ipython *
  • numba *
  • orjson *
  • pandas *
  • pint *
  • pint-pandas *
  • psycopg2-binary *
  • pygments-graphql *
  • pytest-django *
  • pytest-factoryboy *
  • python-dotenv *
  • redis *
  • rich *
  • ruamel.yaml *
  • scipy *
  • sentry_sdk *
  • wagtail <2.16
  • wagtail-grapple *
  • wagtail-localize *
  • wagtailfontawesome *
requirements.txt pypi
  • 173 dependencies
.github/workflows/ci.yaml actions
  • actions/checkout v2 composite
  • docker/login-action v1 composite
docker/app/Dockerfile docker
  • ubuntu 22.04 build
docker/db/Dockerfile docker
  • postgres 13 build
docker-compose.yml docker
  • ${APP_IMAGE-kausal-paths} latest
  • ${DB_IMAGE-kausal-paths-postgres} latest
  • ${REDIS_IMAGE-redis 6.0-alpine}
requirements-notebook.in pypi
  • jupyterlab *
  • jupyterlab-lsp *
  • python-lsp-server *
  • seaborn *
requirements-notebook.txt pypi
  • 101 dependencies