wlc-scenario-explorer
A open source tool that enables selection, comparison, and analysis of various combinations of carbon reduction and/or removal strategies that could be applied across building stocks to affect whole life cycle impacts from buildings and construction.
https://github.com/mroeck/wlc-scenario-explorer
Category: Consumption
Sub Category: Computation and Communication
Last synced: about 19 hours ago
JSON representation
Repository metadata
WLC-Scenario-Explorer is a open source tool that enables selection, comparison, and analysis of various combinations of carbon reduction and/or removal strategies that could be applied across building stocks to affect whole life cycle impacts from buildings and construction.
- Host: GitHub
- URL: https://github.com/mroeck/wlc-scenario-explorer
- Owner: mroeck
- License: apache-2.0
- Created: 2025-06-23T15:05:25.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-07-04T08:21:31.000Z (9 months ago)
- Last Synced: 2026-03-10T04:17:19.362Z (18 days ago)
- Language: TypeScript
- Size: 172 MB
- Stars: 7
- Watchers: 2
- Forks: 1
- Open Issues: 1
- Releases: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
README.md
Getting started
Introduction
🚀 Welcome to the WLC Scenario Explorer source code!
This tool allows exploration of different future scenarios for Whole Life Cycle greenhouse gas (GHG) emissions of buildings across Europe
THE GOAL: help policymakers and practitioners as well as researchers to explore the impact of various strategies on carbon footprints like:
- Increase of circularity measures
- Reduce space per capita
- Reduce transport and construction emissions
- Shift to low carbon and bio-based solutions
- Reduce operational emissions
- Increase use of improved materials
Users can view emissions for each building type, country, material, and more!
You can download the displayed data as an image or as a spreadsheet and visualize it with three type of graphs in the app.
The data comes from building LCAs and building stock modelling of KU Leuven and TU Graz developed as part of the ‘Analysis of Life-cycle Greenhouse Gas Emissions and Removals of EU Buildings and Construction’ study funded by the European Commission.
https://c.ramboll.com/life-cycle-emissions-of-eu-building-and-construction.
The app is accessible at https://ae-scenario-explorer.cloud.set.kuleuven.be and is hosted on the KU Leuven university infrastructure.
Disclaimer: The terminal commands in this documentation are for linux machines.
Installation
You need python ^3.12.6, node ^20.13.1, poetry ^1.8.3 and pnpm ^9.4.0 installed on your machine (or higher versions).
- docker (required to update the tests snapshots , see more in Tests end to end section)
- pulse secure (required to access non production deployments, see more in the VPN section)
- clone the project through ssh and install the dependencies with this command:
git clone git@gitlab.kuleuven.be:ae/sustainable-construction/dg-grow-eu-scenariotool/scenario-explorer.git &&
cd scenario-explorer/backend && poetry install &&
cd ../frontend && pnpm install &&
cd ../e2e && npm install &&
cd ../documentation && pnpm install
If needed see giltab documentation related to ssh
- add the env files
cd ../backend && cp ./.env.example .env &
cd ../frontend && cp ./.env.example .env
- Open the project in the root directory with your favorite code editor
code ../
- Create the root/data/scenarios folder and generate the seeds
mkdir ../data/scenarios &&
pnpm dlx tsx ./scripts/generateSeeds.ts
Start the app
- Start the dev servers from the root directory (one terminal for each):
cd backend && poetry run task dev
cd frontend && pnpm run dev
cd documentation && pnpm run start
The app should be running on localhost:3000 and the documentation on localhost:4000.
For more info: see the documentation.
If somehow you can't run the documentation server, you can still access the doc in repo/documentation/docs
Example usage
Video:
API documentation
There is only one API endpoint. After starting the documentation server (see intallation) go to:
http://localhost:4000/docs/API/scenario
or open the file at:
./documentation/docs/API/scenario.md
There is also a bruno collection at:
./backend/bruno
Contacts
- Martin Röck: martin.roeck@kuleuven.be (scientific project lead)
- Benjamin Lesné: benjamin.lesne@outlook.fr (developer of the app)
- KU Leuven IT Support: it-support@set.kuleuven.be (DevOps referent)
Owner metadata
- Name: Martin Röck
- Login: mroeck
- Email:
- Kind: user
- Description: Researcher focused on environmental modelling of buildings and building stocks using life cycle assessment
- Website: https://linktr.ee/martinroeck
- Location: Cologne, Germany
- Twitter: mrtn_rck
- Company: KU Leuven/TU Graz
- Icon url: https://avatars.githubusercontent.com/u/39553431?v=4
- Repositories: 1
- Last ynced at: 2023-03-04T13:48:00.685Z
- Profile URL: https://github.com/mroeck
GitHub Events
Total
- Watch event: 4
- Issue comment event: 1
- Member event: 2
- Push event: 5
- Pull request event: 1
- Pull request review comment event: 1
- Pull request review event: 1
- Fork event: 1
- Create event: 3
Last Year
- Watch event: 4
- Issue comment event: 1
- Member event: 2
- Push event: 5
- Pull request event: 1
- Pull request review comment event: 1
- Pull request review event: 1
- Fork event: 1
- Create event: 3
Committers metadata
Last synced: 8 days ago
Total Commits: 156
Total Committers: 3
Avg Commits per committer: 52.0
Development Distribution Score (DDS): 0.141
Commits in past year: 27
Committers in past year: 3
Avg Commits per committer in past year: 9.0
Development Distribution Score (DDS) in past year: 0.185
| Name | Commits | |
|---|---|---|
| Benjamin Lesné | b****e@o****r | 134 |
| Ronny Moreas | r****s@k****e | 19 |
| Martin Röck | 3****k | 3 |
Committer domains:
- kuleuven.be: 1
- outlook.fr: 1
Issue and Pull Request metadata
Last synced: 2 months ago
Total issues: 1
Total pull requests: 2
Average time to close issues: N/A
Average time to close pull requests: about 17 hours
Total issue authors: 1
Total pull request authors: 1
Average comments per issue: 2.0
Average comments per pull request: 0.0
Merged pull request: 2
Bot issues: 0
Bot pull requests: 0
Past year issues: 1
Past year pull requests: 2
Past year average time to close issues: N/A
Past year average time to close pull requests: about 17 hours
Past year issue authors: 1
Past year pull request authors: 1
Past year average comments per issue: 2.0
Past year average comments per pull request: 0.0
Past year merged pull request: 2
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- mroeck (1)
Top Pull Request Authors
- BenjaminLesne (2)
Top Issue Labels
Top Pull Request Labels
Dependencies
- base latest build
- nikolaik/python-nodejs python3.12-nodejs20 build
- mcr.microsoft.com/playwright v1.51.1-jammy build
- base latest build
- python 3.12.3-bookworm build
- bitnami/nginx 1.27 build
- node 20-slim build
- @docusaurus/module-type-aliases 3.3.2 development
- @docusaurus/tsconfig 3.3.2 development
- @docusaurus/types 3.3.2 development
- @types/react ^18.0.0 development
- tailwindcss ^3.4.13 development
- typescript ~5.2.2 development
- @docusaurus/core 3.3.2
- @docusaurus/preset-classic 3.3.2
- @mdx-js/react ^3.0.0
- class-variance-authority ^0.7.0
- clsx ^2.1.1
- lucide-react ^0.452.0
- prism-react-renderer ^2.3.0
- react ^18.0.0
- react-dom ^18.0.0
- tailwind-merge ^2.5.4
- tailwindcss-animate ^1.0.7
- 283 dependencies
- 156 dependencies
- @playwright/test ^1.51.1 development
- @types/node ^20.14.10 development
- @typescript-eslint/eslint-plugin ^7.2.0 development
- @typescript-eslint/parser ^7.2.0 development
- eslint ^8.57.0 development
- eslint-config-prettier ^9.1.0 development
- eslint-plugin-playwright ^1.6.2 development
- eslint-plugin-prettier ^5.1.3 development
- husky ^9.0.11 development
- typescript ^5.4.5 development
- @t3-oss/env-core ^0.10.1
- @types/xlsx ^0.0.35
- dotenv ^16.4.5
- type-fest ^4.26.1
- xlsx ^0.18.5
- zod ^3.23.8
- @eslint-react/eslint-plugin ^1.14.3 development
- @playwright/test ^1.44.1 development
- @tanstack/eslint-plugin-query ^5.43.1 development
- @tanstack/router-vite-plugin ^1.38.0 development
- @total-typescript/ts-reset ^0.6.1 development
- @types/dom-to-image ^2.6.7 development
- @types/node ^20.16.10 development
- @types/papaparse ^5.3.14 development
- @types/parquetjs ^0.10.6 development
- @types/react ^18.3.3 development
- @types/react-dom ^18.3.0 development
- @types/recharts-scale ^1.0.3 development
- @typescript-eslint/eslint-plugin ^7.10.0 development
- @typescript-eslint/parser ^7.10.0 development
- @vitejs/plugin-react ^4.3.0 development
- autoprefixer ^10.4.19 development
- duckdb-async ^1.1.1 development
- eslint ^8.57.0 development
- eslint-config-prettier ^9.1.0 development
- eslint-plugin-playwright ^1.6.2 development
- eslint-plugin-prettier ^5.1.3 development
- eslint-plugin-react ^7.34.2 development
- eslint-plugin-react-hooks ^4.6.2 development
- eslint-plugin-react-refresh ^0.4.7 development
- eslint-plugin-tailwindcss ^3.17.3 development
- knip ^5.30.6 development
- madge ^8.0.0 development
- parquetjs ^0.11.2 development
- postcss ^8.4.38 development
- prettier 3.3.2 development
- serve ^14.2.3 development
- tailwindcss ^3.4.4 development
- tsx ^4.19.3 development
- type-fest ^4.26.0 development
- typescript ^5.6.2 development
- vite ^5.2.11 development
- vitest ^2.1.4 development
- @hookform/resolvers ^3.6.0
- @radix-ui/react-accordion ^1.2.0
- @radix-ui/react-checkbox ^1.1.1
- @radix-ui/react-dialog ^1.1.1
- @radix-ui/react-dropdown-menu ^2.1.1
- @radix-ui/react-label ^2.1.0
- @radix-ui/react-popover ^1.1.1
- @radix-ui/react-radio-group ^1.2.2
- @radix-ui/react-scroll-area ^1.1.0
- @radix-ui/react-select ^2.1.1
- @radix-ui/react-separator ^1.1.2
- @radix-ui/react-slider ^1.2.0
- @radix-ui/react-slot ^1.1.0
- @radix-ui/react-tabs ^1.1.0
- @radix-ui/react-toast ^1.2.1
- @radix-ui/react-toggle-group ^1.1.1
- @radix-ui/react-tooltip ^1.1.2
- @t3-oss/env-core ^0.10.1
- @tanstack/react-query ^5.45.0
- @tanstack/react-query-devtools ^5.45.0
- @tanstack/react-router ^1.97.14
- @tanstack/react-table ^8.19.3
- @tanstack/router-devtools ^1.36.3
- @uidotdev/usehooks ^2.4.1
- class-variance-authority ^0.7.0
- clsx ^2.1.1
- cmdk ^1.0.0
- dom-to-image ^2.6.0
- file-saver ^2.0.5
- jspdf ^2.5.1
- lucide-react ^0.395.0
- papaparse ^5.4.1
- react ^18.3.1
- react-dom ^18.3.1
- react-hook-form ^7.52.0
- recharts ^2.12.7
- recharts-scale ^0.4.5
- tailwind-merge ^2.3.0
- tailwindcss-animate ^1.0.7
- ts-pattern ^5.6.0
- vaul ^0.9.1
- xlsx ^0.18.5
- zod ^3.23.8
- zustand ^5.0.3
- 260 dependencies
- annotated-types 0.7.0
- blinker 1.9.0
- click 8.1.8
- colorama 0.4.6
- duckdb 1.1.1
- duckdb-engine 0.13.6
- flask 3.1.1
- flask-cors 6.0.0
- greenlet 3.1.1
- gunicorn 23.0.0
- itsdangerous 2.2.0
- jinja2 3.1.6
- markupsafe 3.0.2
- mslex 1.3.0
- mypy 1.14.1
- mypy-extensions 1.0.0
- numpy 1.26.4
- packaging 24.2
- pandas 2.2.3
- psutil 6.1.1
- pydantic 2.10.4
- pydantic-core 2.27.2
- python-dateutil 2.9.0.post0
- python-dotenv 1.0.1
- pytz 2024.2
- ruff 0.4.10
- six 1.17.0
- sqlalchemy 2.0.36
- taskipy 1.14.1
- tomli 2.2.1
- typing-extensions 4.12.2
- tzdata 2024.2
- werkzeug 3.1.3
- mypy ^1.10.0 develop
- ruff ^0.4.6 develop
- taskipy ^1.12.2 develop
- Flask 3.1.1
- duckdb 1.1.1
- duckdb-engine ^0.13.0
- flask-cors 6.0.0
- gunicorn ^23.0.0
- jinja2 ^3.1.6
- numpy ^1.26.4
- pandas ^2.2.2
- pydantic ^2.8.0
- python ^3.12
- python-dotenv ^1.0.1
- sqlalchemy ^2.0.31
Score: 3.1780538303479453
