etmodel

Interface of the Energy Transition model.

https://github.com/quintel/etmodel

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 (15.5%) to scientific vocabulary

Keywords from Contributors

projection interactive serializer measurement cycles packaging charts network-simulation archival shellcodes
Last synced: 11 months ago · JSON representation

Repository

Interface of the Energy Transition model.

Basic Info
Statistics
  • Stars: 38
  • Watchers: 16
  • Forks: 15
  • Open Issues: 154
  • Releases: 38
Created about 15 years ago · Last pushed 11 months ago
Metadata Files
Readme License

README.markdown

The Energy Transition Model (ETM) Professional

This is the source code of the ETM Pro: an online web app that let you create a future energy scenario for various countries, municipalities, neighbourhoods and more. This software is Open Source, so you can fork it and alter at your will.

If you have any questions, please contact us.

Build Status

Master

Build Status

Production

Build Status

License

The ETM pro is released under the MIT License.

Branches

Installation with Docker

New users are recommended to use Docker to run ETEngine. Doing so will avoid the need to install additional dependencies.

  1. Get a copy of ETModel. You may choose to clone the repository using Git, or download a ZIP archive from Github.

  2. Build the ETModel image:

    sh docker-compose build

  3. Install dependencies and seed the database:

sh docker-compose run --rm web bash -c 'bin/rails db:drop && bin/setup'

This command drops any existing ETModel database; be sure only to run this during the initial setup! This step will also provide you with an e-mail address and password for an administrator account.

  1. By default, ETModel will send requests to the beta (staging) version of ETEngine. This is used for testing purposes and is more frequently updated than the live (production) version.

    Run ETEngine locally

    If you wish to run a local copy of ETEngine, ETModel must be told where to find its API. You must first find your machine's local/private IP address; ETModel will use this to send messages directly to ETEngine, and also by your browser when you are using the ETModel application to create scenarios. To get your IP address, run:

    sh ipconfig getifaddr en0 # on macOS hostname -I # on Linux ipconfig # on Windows

* [macOS](https://www.hellotech.com/guide/for/how-to-find-ip-address-on-mac)
* [Ubuntu](https://help.ubuntu.com/stable/ubuntu-help/net-findip.html.en)

Create a file called `config/settings.local.yml` containing:

```yaml
ete_url: http://YOUR_IP_ADDRESS:3000
```

#### Branches

When running ETEngine locally, be sure to use the same branch or tag for ETModel, ETEngine, and ETSource. You are likely to encounter errors if you fail to do so.

For example, if you wish to run the latest version all three should be set to the `master` branch. If you wish to run the production release from March 2022, they should all use the same tag:

```sh
cd ../etengine && git checkout 2022.03
cd ../etsource && git checkout 2022.03
cd ../etmodel  && git checkout 2022.03
```
  1. Launch the containers:

docker-compose up

After starting application will become available at http://localhost:3001 after a few seconds. This is indicated by the message "Listening on http://0.0.0.0:3001".

Installation without Docker

Prerequisites

Mac users should be able to install the following prerequisites with Homebrew, Ubuntu users can use apt-get. * Ruby 2.6.6 and a Ruby version manager such as rbenv * Mysql database server * Yarn 1.22.5

Installing

  • Pull this repository with git clone git@github.com:quintel/etmodel.git

    • Local Engine You can communicate with either a local version of ETEngine, or one of our servers by specifying the ete_url in config.yml. To use a local version, change the standard beta server url to http://localhost:<PORT> based on which port you are running the Engine on.
    • Database password If you added a username and password to your mysql service, please replace the standard login info in database.yml with your own credentials.
  • Run bundle install and yarn install to install all the dependencies

  • Create and fill local database with rake db:setup and RAILS_ENV=test rake db:setup

  • Fire up your local server with rails server -p3001

  • Go to localhost:3001 and you should see the ETM pro!

Admin access

If you want to get admin access to your own page, the easiest way to do so is to create an Admin User through the console and follow instructions:

rake db:create_admin

Bugs and feature requests

If you encounter a bug or if you have a feature request, you can either let us know by creating an Issue or you can try to fix it yourself and create a pull request.

With thanks...

The Energy Transition Model is built by Quintel. It is made possible by open source software, and assets kindly provided for free by many wonderful people and organisations.

Software

Icons and images

Wiki

Wiki

Owner

  • Name: Quintel
  • Login: quintel
  • Kind: organization
  • Email: info@quintel.com
  • Location: Amsterdam

GitHub Events

Total
  • Create event: 146
  • Commit comment event: 1
  • Release event: 6
  • Issues event: 95
  • Watch event: 11
  • Delete event: 115
  • Issue comment event: 162
  • Push event: 569
  • Pull request review event: 106
  • Pull request review comment event: 38
  • Pull request event: 211
  • Fork event: 3
Last Year
  • Create event: 146
  • Commit comment event: 1
  • Release event: 6
  • Issues event: 95
  • Watch event: 11
  • Delete event: 115
  • Issue comment event: 162
  • Push event: 569
  • Pull request review event: 106
  • Pull request review comment event: 38
  • Pull request event: 211
  • Fork event: 3

Committers

Last synced: 12 months ago

All Time
  • Total Commits: 9,099
  • Total Committers: 65
  • Avg Commits per committer: 139.985
  • Development Distribution Score (DDS): 0.77
Past Year
  • Commits: 307
  • Committers: 6
  • Avg Commits per committer: 51.167
  • Development Distribution Score (DDS): 0.661
Top Committers
Name Email Commits
Paolo Zaccagnini p****c@g****m 2,089
Anthony Williams hi@a****v 1,932
Mathijs Bijkerk m****k@q****m 686
noracato n****l@g****m 434
Chael Kruip c****p@q****m 400
Robbert Dol r****l@q****m 383
marliekeverweij m****j@q****m 372
Michiel den Haan m****n@q****m 339
Dennis Schoenmakers d****s@q****m 307
Kas Kranenburg k****g@q****m 163
Sebi Burkhard s****d@g****m 162
Gerard Westerhof g****d@g****l 156
Kyra de Haan k****n@q****m 150
Frans van Camp f****p@x****l 125
Mart Lubben m****n@q****m 104
Roos de Kok r****k@q****m 101
Joris Berkhout j****t@q****m 95
Alexander Wirtz a****z@q****m 92
louispt1 l****1@g****m 83
Charlotte von Meijenfeldt c****t@q****m 81
dependabot[bot] 4****] 80
Jesse Kerkhoven j****n@z****l 80
Koen van Bemmelen k****n@q****m 74
Dorine van der Vlies d****s@q****m 64
cjlaumans c****s@q****m 59
Rob Terwel r****l@q****m 59
Lotte van Vlimmeren l****n@q****m 46
Wouter van Lelyveld w****d@q****m 40
Kyra de Haan k****n@K****l 35
Steven Kemp s****p@q****m 34
and 35 more...

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 3,227
  • Total pull requests: 1,471
  • Average time to close issues: 4 months
  • Average time to close pull requests: 11 days
  • Total issue authors: 57
  • Total pull request authors: 38
  • Average comments per issue: 2.69
  • Average comments per pull request: 0.64
  • Merged pull requests: 1,247
  • Bot issues: 6
  • Bot pull requests: 173
Past Year
  • Issues: 64
  • Pull requests: 257
  • Average time to close issues: 24 days
  • Average time to close pull requests: 13 days
  • Issue authors: 13
  • Pull request authors: 8
  • Average comments per issue: 0.59
  • Average comments per pull request: 0.55
  • Merged pull requests: 181
  • Bot issues: 2
  • Bot pull requests: 55
Top Authors
Issue Authors
  • dennisquintel (491)
  • ChaelKruip (443)
  • wmeyers (228)
  • marliekeverweij (188)
  • robbertdol (186)
  • jorisberkhout (168)
  • AlexanderWirtz (167)
  • mabijkerk (140)
  • DorinevanderVlies (121)
  • Richard-Deuchler (103)
  • MartLubben (92)
  • grdw (85)
  • michieldenhaan (78)
  • markquintel (73)
  • noracato (53)
Pull Request Authors
  • dependabot[bot] (173)
  • marliekeverweij (134)
  • mabijkerk (123)
  • noracato (114)
  • grdw (97)
  • kaskranenburgQ (93)
  • antw (88)
  • louispt1 (71)
  • kndehaan (70)
  • ChaelKruip (65)
  • michieldenhaan (65)
  • redekok (56)
  • Charlottevm (45)
  • MartLubben (41)
  • DorinevanderVlies (33)
Top Labels
Issue Labels
Features (386) Bug (368) Clean up (364) Layout (281) Priority (221) Stale (165) Pinned (134) On hold (113) Charts (104) Minor (100) Enhancement (99) Question (97) Sliders (93) cross browser (47) effort:1 (33) Wish list (28) Scenario report (27) effort:3 (12) effort:2 (8) tests (8) mondaine (7) merit order (6) Sankey (5) waiting for deploy (5) Not ETModel ಠ_ಠ (4) API (3) effort:7 (2) configuration (2) dependencies (2) ruby (2)
Pull Request Labels
dependencies (173) ruby (99) javascript (73) Stale (43) Pinned (16) Clean up (12) Minor (9) Charts (7) Enhancement (6) Bug (5) Layout (3) Features (3) On hold (2) mondaine (1) Scenario report (1)

Dependencies

.github/workflows/stale.yml actions
  • actions/stale v3 composite
.docker/nginx/Dockerfile docker
  • ${SOURCE_IMAGE} latest build
  • nginx latest build
Dockerfile docker
  • ruby 3.1-slim build
package.json npm
  • @types/d3 ^6.2.0 development
  • @types/i18n-js ^3.0.3 development
  • @types/jquery ^3.5.4 development
  • @typescript-eslint/eslint-plugin ^4.8.1 development
  • @typescript-eslint/parser ^4.8.1 development
  • babel-eslint ^10.0.0 development
  • eslint ^6.0.0 development
  • eslint-config-prettier ^6.0.0 development
  • eslint-import-resolver-typescript ^2.3.0 development
  • eslint-plugin-import ^2.22.1 development
  • eslint-plugin-prettier ^3.1.0 development
  • eslint-plugin-unicorn ^23.0.0 development
  • prettier ^2.2 development
  • webpack-dev-server ^3.11.0 development
  • @babel/preset-typescript ^7.12.7
  • @rails/webpacker 5.4.3
  • core-js ^3.7.0
  • d3-array 2.3.3
  • d3-axis 2
  • d3-interpolate-path ^2.2.1
  • d3-scale 3
  • d3-selection 2
  • d3-shape 2
  • d3-transition 2
  • html2canvas ^1.0.0-rc.7
  • typescript ^4.1.3
yarn.lock npm
  • 1154 dependencies
Gemfile rubygems
  • bcrypt_pbkdf >= 0 development
  • better_errors >= 0 development
  • capistrano ~> 3.9 development
  • capistrano-bundler ~> 1.1 development
  • capistrano-maintenance ~> 1.0 development
  • capistrano-rails ~> 1.1 development
  • capistrano-rbenv ~> 2.0 development
  • capistrano3-puma ~> 5.0.4 development
  • capybara >= 0 development
  • database_cleaner >= 0 development
  • ed25519 >= 0 development
  • factory_bot_rails ~> 4.8 development
  • launchy >= 0 development
  • letter_opener >= 0 development
  • pry-byebug >= 0 development
  • pry-rails >= 0 development
  • pry-remote >= 0 development
  • pry-stack_explorer >= 0 development
  • rails-controller-testing >= 0 development
  • rspec-rails >= 0 development
  • rspec_junit_formatter >= 0 development
  • rubocop ~> 1.0 development
  • rubocop-performance >= 0 development
  • rubocop-rails >= 0 development
  • rubocop-rspec >= 0 development
  • seed_dump >= 0 development
  • selenium-webdriver >= 0 development
  • shoulda-matchers >= 0 development
  • simplecov >= 0 development
  • tomdoc >= 0 development
  • vcr ~> 6.0 development
  • watchr >= 0 development
  • webdrivers >= 0 development
  • webmock >= 3.5 development
  • yard-tomdoc ~> 0.4.0 development
  • activerecord-session_store >= 0
  • activeresource ~> 6.0
  • babel-transpiler >= 0
  • browser >= 0
  • cancancan >= 0
  • coffee-rails >= 0
  • config >= 0
  • dalli >= 0
  • discard >= 0
  • dry-initializer >= 0
  • dry-monads >= 0
  • dry-struct >= 0
  • dry-validation >= 0
  • dynamic_form >= 0
  • font-awesome-rails >= 0
  • haml ~> 5.0
  • http_accept_language >= 0
  • httparty >= 0
  • i18n-js ~> 3
  • identity >= 0
  • inky-rb >= 0
  • inline_svg >= 0
  • invisible_captcha >= 0
  • jbuilder >= 0
  • jquery-etmodel-rails >= 0
  • jquery-rails ~> 4.2.2
  • kaminari ~> 1.2.1
  • local_time >= 0
  • loofah >= 0
  • mini_racer >= 0.6
  • mysql2 >= 0
  • newrelic_rpm >= 0
  • nokogiri ~> 1.13
  • non-stupid-digest-assets >= 0
  • oily_png >= 0
  • premailer-rails >= 0
  • puma >= 0
  • rails ~> 7.0.0
  • rails-html-sanitizer ~> 1.4.4
  • rails-i18n >= 0
  • rdiscount >= 0
  • sassc-rails >= 0
  • sentry-rails >= 0
  • sentry-ruby >= 0
  • simple_form >= 0
  • sprockets-rails >= 0
  • tabs_on_rails ~> 3.0
  • terser >= 0
  • valid_email2 >= 0
  • webpacker >= 0
Gemfile.lock rubygems
  • 225 dependencies
docker-compose.yml docker