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

CircuMat

RaMa-Scene fork, CircuMat focuses on NUTS2 level classification as opposed to Rama-Scene country level analysis tool.
https://github.com/CMLPlatform/CircuMAT

Last synced: over 1 year ago
JSON representation

Acceptance Criteria

Repository metadata

CircuMat is a modified (forked) version of Rama-Scene EIT Raw Materials project related to analyzing Environmentally Extended Input-Output (EEIO) tables. CircuMat focuses on NUTS2 level classification as opposed to Rama-Scene country level analysis tool.

README.md

CircuMat


CircuMat is a modified (forked) version of Rama-Scene EIT Raw Materials project related to analyzing Environmentally Extended Input-Output (EEIO) tables. CircuMat focuses on NUTS2 level classification as opposed to Rama-Scene country level analysis tool.

License: GPL v3
Contributions welcome

Developers Guide


For more information on the tool architecture, please refer to Rama-Scene's documenation: http://rama-scene.readthedocs.io/en/latest/

Getting started


Retrieve the raw datasets

  • EXIOBASE-Rama-Scene (v4 - modified version including secondary materials + CircuMat Eurostat data):

https://surfdrive.surf.nl/files/index.php/s/bEVnoyJUeYMUiyr

pass: circumat

Download the circumat_v4_clean.zip folder.

Clone the project

$ git clone https://[email protected]/CML-IE/circumat.git

Create a virtual environment (python3.5 or higher) and install the app requirements (make sure you have python-dev installed via apt-get)

$ pip3 install -r requirements.txt 

Install node.js (node version: 3.10.10 or higher)

$ sudo apt-get update
$ sudo apt-get install nodejs

Note: On debian apt install nodejs-legacy

Install redis (for Django Channels)

$ sudo apt install redis-server

Install rabbitMQ (for Celery)

$ sudo apt-get install -y erlang

$ sudo apt-get install rabbitmq-server

Then enable and start the RabbitMQ service:

$ sudo systemctl enable rabbitmq-server

$ sudo systemctl start rabbitmq-server

Check the status to make sure everything is running:
$ sudo systemctl status rabbitmq-server

Note: Perform all next steps in the virtualenv and in the rootfolder of the project

Set the following environment variables (see sample-dev-env.sh):

export DJANGO_SETTINGS_MODULE=circumatMasterProject.config.dev
export DATASETS_VERSION=[version downloaded e.g. v3]
export DATASETS_DIR=my/path/to/datasets (make sure that inside this folder is a folder containing the year 2011)
export OPENBLAS_NUM_THREADS=<adjust according to how many cores you want to use>

If you are on Linux and using the OpenBlas library for Numpy.
It is advised to set the number of threads Numpy uses. To find which library is used in python:

>>>import numpy as np
>>>np.__config__.show()

Prepare the database

$ python3 manage.py makemigrations
$ python3 manage.py migrate

Populate the database

$ python3 manage.py populateHierarchies

Prepare static resources (npm version 4.6.1 or higher)

$ npm install

Built React bundle

$ ./node_modules/.bin/webpack --config dev-webpack.config.js 

Start Celery

Start the celery module to enable handling of calculations:

$ celery -A circumatMasterProject worker -l info  --concurrency 1 

Start the development server

$ python3 manage.py runserver

Access the app via the webbrowser: http://127.0.0.1:8000/circumat/

Core dependencies


TO BE UPDATED

The app uses Celery [4.1.0] (http://docs.celeryproject.org/en/latest/django/first-steps-with-django.html), Django channels [2.1.5] (https://channels.readthedocs.io/en/latest/)

Contributers

(Ramascene & Circumat) Back-end developer: Sidney Niccolson & Franco Donati (CML)
(Ramascene) Front-end developer: Franco Donati (CML) & Bart Daniels (VITO)
(Ramascene) IO calculations: Arjan de Koning, Hale Cetinay & Franco Donati (CML)
(Ramascene) IO modelling: Franco Donati (CML)
Eurostat data: Elmer Rietveld (TNO)
Project manager: Hale Cetinay Iyicil & Franco Donati (CML)


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: over 1 year ago

Total Commits: 7
Total Committers: 1
Avg Commits per committer: 7.0
Development Distribution Score (DDS): 0.0

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

Name Email Commits
FDonati f****i@c****l 7

Committer domains:


Issue and Pull Request metadata

Last synced: over 1 year ago

Total issues: 0
Total pull requests: 34
Average time to close issues: N/A
Average time to close pull requests: 7 months
Total issue authors: 0
Total pull request authors: 1
Average comments per issue: 0
Average comments per pull request: 0.65
Merged pull request: 12
Bot issues: 0
Bot pull requests: 34

Past year issues: 0
Past year pull requests: 0
Past year average time to close issues: N/A
Past year average time to close pull requests: N/A
Past year issue authors: 0
Past year pull request authors: 0
Past year average comments per issue: 0
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/CMLPlatform/CircuMAT

Top Issue Authors

Top Pull Request Authors

  • dependabot[bot] (34)

Top Issue Labels

Top Pull Request Labels

  • dependencies (34)
  • javascript (21)
  • python (12)
  • ruby (1)

Dependencies

package-lock.json npm
  • 466 dependencies
package.json npm
  • webpack-cli ^4.8.0 development
  • @babel/core ^7.16.0
  • @babel/plugin-proposal-class-properties ^7.14.5
  • @babel/preset-env ^7.15.6
  • @babel/preset-react ^7.14.5
  • babel-loader ^8.2.2
  • babel-polyfill ^6.26.0
  • bootstrap ^5.1.1
  • cli ^1.0.1
  • css-loader ^6.3.0
  • d3plus-react ^1.0.2
  • dotenv-webpack ^7.0.3
  • jquery ^3.6.0
  • mini-css-extract-plugin ^2.3.0
  • papaparse ^5.3.1
  • rc-tree-select ^4.6.1
  • react ^17.0.2
  • react-bootstrap ^0.33.1
  • react-confirm-alert ^2.7.0
  • react-csv ^2.0.3
  • react-dom ^17.0.2
  • react-ga ^3.3.0
  • sass ^1.42.1
  • sass-loader ^12.1.0
  • shortid ^2.2.16
  • webpack ^5.54.0
  • webpack-bundle-tracker ^1.4.0
  • xmldom ^0.5.0
requirements.txt pypi
  • Automat ==20.2.0
  • Django ==3.2.7
  • Twisted ==21.7.0
  • aioredis ==1.3.1
  • amqp ==5.0.6
  • asgiref ==3.4.1
  • async-timeout ==3.0.1
  • attrs ==21.2.0
  • autobahn ==21.3.1
  • billiard ==3.6.4.0
  • celery ==5.1.2
  • cffi ==1.14.6
  • channels ==3.0.4
  • channels-redis ==3.3.1
  • click ==7.1.2
  • click-didyoumean ==0.0.3
  • click-plugins ==1.1.1
  • click-repl ==0.2.0
  • constantly ==15.1.0
  • cryptography ==3.4.8
  • daphne ==3.0.2
  • django-celery-results ==2.2.0
  • django-cors-headers ==3.8.0
  • django-webpack-loader ==1.3.0
  • hiredis ==2.0.0
  • hyperlink ==21.0.0
  • idna ==3.2
  • incremental ==21.3.0
  • kombu ==5.1.0
  • msgpack ==1.0.2
  • numpy ==1.21.2
  • pandas ==1.3.3
  • prompt-toolkit ==3.0.20
  • pyOpenSSL ==20.0.1
  • pyasn1 ==0.4.8
  • pyasn1-modules ==0.2.8
  • pycparser ==2.20
  • python-dateutil ==2.8.2
  • pytz ==2021.1
  • service-identity ==21.1.0
  • six ==1.16.0
  • sqlparse ==0.4.2
  • txaio ==21.2.1
  • typing-extensions ==3.10.0.2
  • vine ==5.0.0
  • wcwidth ==0.2.5
  • zope.interface ==5.4.0

Score: 1.0986122886681098