Skip to content

Release Note - Version 1.5 chickpea_botatte-release

Overview

Tukko is a software application designed to visualize the status of traffic on a map. With this application, the user is able to see where traffic flow may be inhibited and plan their route accordingly. On top of traffic flow, the user also has access to other types of information, like the number of cars on a given road with LAM ("Liikenteen Automaattiset Mittaustiedot" or "automatic measurement data of traffic") stations, and locations where road work is being carried out.

Key Features

  • Leaflet.js for visualization and Maps from OpenStreetMap.org
  • Markers that show traffic flow as a color for both directions.
  • Markers can show an icon for possible road work.
  • Tooltips that can show you the directional preview of the number of vehicles and their average speed.
  • Tooltip shows detailed information about road works.
  • Popup shows even more detailed information about the traffic situation.
  • There's a History Data view for statistical data for each station. It shows data in a nice graph.

Backend Component

The backend component utilizes the following technologies:

"dependencies": {
  "axios": "^1.4.0",
  "compression": "^1.7.4",
  "cors": "^2.8.5",
  "express": "^4.18.2",
  "http-status-codes": "^2.2.0",
  "mongodb": "^5.6.0",
  "node-localstorage": "^2.2.1",
  "redis": "^4.6.7",
  "redis-om": "^0.4.0-beta.3",
  "swagger-jsdoc": "^6.2.8",
  "swagger-ui-express": "^4.6.3",
  "tsconfig-paths": "^4.2.0"
},
"devDependencies": {
  "@types/compression": "^1.7.2",
  "@types/cors": "^2.8.13",
  "@types/express": "^4.17.17",
  "@types/jest": "^29.5.2",
  "@types/node": "^20.2.5",
  "@types/node-localstorage": "^1.3.0",
  "@types/react": "^18.2.12",
  "dotenv": "^16.3.1",
  "jest": "^29.5.0",
  "nodemon": "^1.14.9",
  "npm-run-all": "^4.1.5",
  "ts-jest": "^29.1.1",
  "ts-node": "^10.9.1",
  "ts-node-dev": "^2.0.0",
  "typescript": "^5.1.3"
}

Frontend Component

The frontend component utilizes the following technologies:

"dependencies": {
  "@fortawesome/fontawesome-free": "^6.4.0",
  "@fortawesome/free-solid-svg-icons": "^6.4.0",
  "@fortawesome/react-fontawesome": "^0.2.0",
  "@geoman-io/leaflet-geoman-free": "^2.14.2",
  "compression": "^1.7.4",
  "date-fns": "^2.30.0",
  "flag-icons": "^6.7.0",
  "i18next": "^23.2.3",
  "i18next-browser-languagedetector": "^7.0.2",
  "i18next-http-backend": "^2.2.1",
  "leaflet-geosearch": "^3.8.0",
  "react-collapsible": "^2.10.0",
  "react-dark-mode-toggle": "^0.2.0",
  "react-i18next": "^13.0.1",
  "react-leaflet-cluster": "^2.1.0",
  "react-responsive": "^9.0.2",
  "react-router-dom": "^6.14.0",
  "react-toggle": "^4.1.3",
  "react-tooltip": "^5.16.1",
  "recharts": "^2.7.2"
},
"devDependencies": {
  "@types/esri-leaflet-geocoder": "^2.2.3",
  "@types/leaflet": "^1.9.3",
  "@types/leaflet.markercluster": "^1.5.1",
  "@types/react": "^18.0.28",
  "@types/react-dom": "^18.0.11",
  "@types/react-router-dom": "^5.3.3",
  "@types/react-toggle": "^4.0.3",
  "@types/recharts": "^1.8.24",
  "@typescript-eslint/eslint-plugin": "^5.57.1",
  "@typescript-eslint/parser": "^5.57.1",
  "@vitejs/plugin-react": "^4.0.0",
  "axios": "^1.4.0",
  "eslint": "^8.38.0",
  "eslint-plugin-react-hooks": "^4.6.0",
  "eslint-plugin-react-refresh": "^0.3.4",
  "typescript": "^5.0.2",
  "vite": "^4.3.2"
}

Known Limitations

  • There are a lot of features in the backlog for future implementation:
Feature Functionalities Functional Requirement / User Story
FEA003 Queries and reports to improve the service. FUNC-REQ-C0003
FEA008 Automatized testing done with Robot Framework FUNC-REQ-C0008
FEA012 The user may create a password protected account to save their personal history and settings FUNC-REQ-C0012
FEA013 Registered users may subscribe to an email service to get notifications from their specified areas FUNC-REQ-C0013
FEA014 A filter to predict traffic with smart algorithms FUNC-REQ-C0014
FEA018 Digitransit data is displayed on the map FUNC-REQ-C0018
FEA021 Ability to filter results based on the location FUNC-REQ-C0021
FEA025 As an end user I want to see Tilannehuone.fi kind of data about accidents and such. FUNC-REQ-C0031
FEA026 As an traveller I want to use Tukko to check the road situation in Finland, Sweden and Norway. FUNC-REQ-C0030
FEA027 As an traveller I want to use Tukko to check the road situation in Finland, Sweden and Norway. FUNC-REQ-C0030
  • Backend will need some kind of a load balancer to perform better with a lot of simultaneous users.

Getting Started

To get started with the application, you have two options:

Support and Feedback

If you have any questions, feedback, or need assistance, you can use the feedback form on Tukko or contact us through LinkedIn.

List of known issues and feedback

Issue Tag Possible solution
There are currently no known bugs