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

lowtrip

A web app to compute travel CO2eq for different means of transport worldwide.
https://github.com/xavb64/lowtrip

Category: Consumption
Sub Category: Mobility and Transportation

Keywords

carbon-footprint energy map slow-travelers travel

Last synced: about 20 hours ago
JSON representation

Repository metadata

A web app to compute travel CO2eq for different means of transport worldwide

README.md

a web app to compute travel CO2eq for different means of transport worldwide

The work presented here is independent and not-for-profit. This work has been carried out on a
voluntary basis.

The aim of this web app is to present precise carbon inventories per passenger for each mode of
transport and each journey. These results enable users to make informed choices in the context of
reducing their greenhouse gas emissions to mitigate climate change. To put these results into context, total net yearly
per-capita emissions should not exceed 2 tons CO2eq in 2050 to limit global warming below +2°C.

You can have a look at https://lowtrip.fr/.

How the emissions are calculated?

To calculate CO2 equivalent emissions per person, we multiply the distance of a journey (km) by the corresponding emission factor (mass of CO2 equivalent per person per km) of a mean of transport. For a mutlistep journey, these emissions are summed over the different steps:

$$CO_2eq = \sum_{step} Distance(km) \times Emission \: Factor(kgCO_2eq / km) $$

Estimation of distances

Mean of Transport Distance
Train OpenStreetMap network
Car & Bus & eCar OpenStreetMap network
Bike route OpenStreetMap network
Plane Geodesic distance and average detour
Ferry & Sailboat Approximation of shortest path

What do emission factors depend on?

Mean of Transport Variable
Train Visited countries
Bus -
Car Number of passengers
Electric car Visited countries & Number of passengers
Bike route -
Plane Distance of journey
Ferry User-specified parameters
Sailboat - ; improvements on the way

Emissions factors consider usage (linked to the manufacture and use of energy to move the vehicle) as well as infrastructure and vehicle construction where these are significant. The table below summarizes the types of emissions taken into account by lowtrip. Empty cells mean that the related emissions did not contribute significantly to the result and are therefore excluded to facilitate understanding and readability for the user.

Mean of Transport Usage Vehicle construction Infrastruture construction
Train
Car & Bus & eCar
Bike route Not found
Plane
Ferry Not found
Sailboat Not found

All assumptions, data and sources used are available in the methodology document.

How to launch the app?

Prerequisites

Have docker installed

Launch the app

At the root of the directory, run:

docker-compose up --build

You can now connect to http://localhost:3000 to test the application.

Note: If you want to launch them in the backgroup and leave them running, you can add the flag -d or --detach.

Rebuild and restart a service

At the root of the directory, run:

docker-compose up --build <service name: backend or frontend>

Stop the app

At the root of the directory, run:

docker-compose down

How to launch the app components separately?

Prerequisites

Have python & node installed

Launch the backend

cd backend

# create a python environment and activate it
python -m venv lowtrip-venv
source lowtrip-venv/bin/activate

# install the dependencies
pip install -r requirements.txt

# launch the app
gunicorn app:app

You can format the code with ruff:

pip install ruff
ruff format

Launch the frontend

cd frontend

# install the dependencies
npm install

# launch the app
npm start

How to cite this work ?

Bonnemaizon, Xavier, Ni, Clara, Gres, Paola & Pellas, Chiara. lowtrip (2024). https://lowtrip.fr


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 4 days ago

Total Commits: 349
Total Committers: 10
Avg Commits per committer: 34.9
Development Distribution Score (DDS): 0.625

Commits in past year: 147
Committers in past year: 9
Avg Commits per committer in past year: 16.333
Development Distribution Score (DDS) in past year: 0.381

Name Email Commits
Clara Ni c****i@o****r 131
Xav_Bueno 9****4 97
unknown x****a@L****R 61
paolagres g****a@g****m 43
François Lorne f****l@t****r 9
Mikael Arguedas m****s@g****m 3
Loïc LESCOAT l****c@e****m 2
Quentin Mazars-Simon q****n@g****m 1
Camille Barneaud 1****m 1
BaudouinH 4****H 1

Committer domains:


Issue and Pull Request metadata

Last synced: 2 days ago

Total issues: 26
Total pull requests: 116
Average time to close issues: 29 days
Average time to close pull requests: 3 days
Total issue authors: 6
Total pull request authors: 9
Average comments per issue: 0.88
Average comments per pull request: 0.11
Merged pull request: 108
Bot issues: 0
Bot pull requests: 0

Past year issues: 25
Past year pull requests: 71
Past year average time to close issues: 30 days
Past year average time to close pull requests: 3 days
Past year issue authors: 5
Past year pull request authors: 9
Past year average comments per issue: 0.88
Past year average comments per pull request: 0.13
Past year merged pull request: 66
Past year bot issues: 0
Past year bot pull requests: 0

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

Top Issue Authors

  • clarani (11)
  • tomasbastien (6)
  • Lerri-Cofannos (4)
  • GaboFlo (2)
  • quentinms (2)
  • babastienne (1)

Top Pull Request Authors

  • clarani (77)
  • paolagres (20)
  • XavB64 (8)
  • mikaelarguedas (6)
  • loic-lescoat (1)
  • BaudouinH (1)
  • quentinms (1)
  • gadcam (1)
  • Lerri-Cofannos (1)

Top Issue Labels

  • enhancement :rocket: (16)
  • priority:medium :orange_circle: (7)
  • priority:high :red_circle: (6)
  • priority:low :yellow_circle: (4)
  • bug :lady_beetle: (2)
  • enhancement (1)

Top Pull Request Labels


Dependencies

frontend/package-lock.json npm
  • 1460 dependencies
frontend/package.json npm
  • @types/google.maps ^3.54.10 development
  • @types/katex ^0.16.7 development
  • @types/leaflet ^1.9.8 development
  • @types/lodash ^4.14.202 development
  • @types/react ^18.2.46 development
  • @chakra-ui/react ^2.8.2
  • @emotion/react ^11.11.3
  • @emotion/styled ^11.11.0
  • @testing-library/jest-dom ^5.17.0
  • @testing-library/react ^13.4.0
  • @testing-library/user-event ^13.5.0
  • @types/jest ^29.5.11
  • @types/node ^20.10.6
  • @types/react-dom ^18.2.18
  • axios ^1.6.2
  • framer-motion ^11.0.3
  • i18next ^23.10.1
  • i18next-browser-languagedetector ^7.2.0
  • katex ^0.16.10
  • leaflet ^1.9.4
  • localforage ^1.10.0
  • lodash ^4.17.21
  • match-sorter ^6.3.4
  • react ^18.2.0
  • react-dom ^18.2.0
  • react-i18next ^14.1.0
  • react-icons ^4.12.0
  • react-id-generator ^3.0.2
  • react-leaflet ^4.2.1
  • react-router-dom ^6.22.3
  • react-scripts 5.0.1
  • recharts ^2.11.0
  • sort-by ^1.2.0
  • typescript ^4.9.5
  • web-vitals ^2.1.4
backend/requirements.txt pypi
  • Werkzeug ==2.2.2
  • flask ==2.2.2
  • flask_cors *
  • geopandas ==0.14.0
  • gunicorn *
  • momepy ==0.6.0
  • networkx ==2.8.4
  • numpy ==1.23.2
  • openrouteservice *
  • pandas ==2.0.0
  • plotly ==5.9.0
  • pyproj ==3.6.1
  • requests ==2.28.1
  • shapely ==2.0.1

Score: 6.565264970035361