Table of contents
Knooppuntnet is a website for planning routes through walking, cycling and other types of node networks in OpenStreetMap. It provides support for analysis and quality assurance of these networks, and monitoring long distance walking routes.
You can plan a walking route by clicking on a start node and destination node (and optionally intermediate nodes that you want to pass through). You can output the planned route in a pdf document and/or a gpx track.
In the analysis section of knooppuntnet, you can get an overview of all nodes and routes in a given node network, and explore issues that knooppuntnet finds. Directs links to editors make it easier to fix problems in the OpenStreetMap database.
You can look at the changes to the OpenStreetMap database that affect the node networks in near realtime.
For long distance walking routes, you can compare GPX traces with the mapping of the route in OpenStreetMap. This allows you to find problems in the OpenStreetMap database and/or the GPX trace.
Here are a number of ways of how you can contribute to the project:
-
validate routes on the ground
-
map additional nodes/routes/networks
-
report errors
-
application translation
-
documentation
-
application testing
-
application code
The intention is to have knooppuntnet available in four languages: English, Dutch, German and French.
The application documentation is in the OpenStreetMap wiki. Feel free to add to this and/or translate to other languages.
Your help in translating the application to a language that is not fully translated yet, or to fix wrong translations, is very welcome.
The base language for the application is English. Support for translation to the other languages is kindly provided free of charge by POEditor. POEditor supports open source. Many thanks!!!
Follow this link to join the knooppuntnet translation project.
From the project start page you can select the language. In the "Translations" tab you can review all translations (select "Show: translated"), or bring up the list with all texts that still need translation (select "Show: Untranslated"). From these lists the translated texts can be entered and/or changed. Click the text to start editing.
All the translations you make here will appear in the knooppuntnet website in the next release.
The above is sufficient to help out with the translations.
A bit more advanced: if you like to review your translation changes without waiting for the next release, you can follow the instructions in the section "Install application locally" below.
In the POEditor page for your language, you can go to the "Export" tab. Select "Show Advanced Options". Select "Export: All" and "Filename: translations.XX.xlf" where XX is the 2 letter code for given language:
Language | Command |
---|---|
Dutch | translations.nl.xlf |
German | translations.de.xlf |
French | translations.fr.xlf |
Klik "Export" and save the file in the "locale" directory in your git clone:
knooppuntnet/frontend/src/locale
To see your translations in action, restart the application in development for given language, for example (from directory knooppuntnet/frontend):
npm run serve:translation:de
Note: changes to the English texts have to be done directly in the application code.
These are the instructions for installing the client application on your local computer (for development purposes).
We use "npm" to manage the software dependencies and to help in installing and running the client application.
If you do not have a version of node.js installed, please follow the directions for installation on nodejs.org.
We use git as our version control system. Although it is also possible to download the code as a zip file, it will be easier to immediately use git, especially if the intention is to contribute to the project afterwards.
Go to git downloads and follow the installation instructions.
Get the source code:
git clone https://github.com/vmarc/knooppuntnet.git
Install the software and fetch all dependencies:
cd knooppuntnet/frontend/
npm install
Build and run the client:
ng serve
In a web browser on your computer, open:
http://localhost:4000
The above command will build and start the English version of the application in development mode. Use one of the following commands to start the application in another language:
Language | Command |
---|---|
Dutch | npm run serve:translation:nl |
German | npm run serve:translation:de |
French | npm run serve:translation:fr |
When starting the application in a language other than English, the texts that are not translated yet are shown in English.
You can contribute by adding, updating or reviewing the node and route definitions in OpenStreetMap. Any changes made there will become available in the application soon after upload to OpenStreetMap.
Issues can be reported in github, or through an OpenStreetMap message to vmarc.
Note: when submitting issues, please feel free to use English, Dutch, French or German.
Review these documented planner interaction tests.
Knooppuntnet is happy to use an IDE from JetBrains who provided an open source license.
Translation support for the application is provided by for free by POEditor (supporter of open source projects). You can join the translation effort at their web-site.
All map data is coming from OpenStreetMap.
Background map tiles are created with OpenMapTiles using OpenStreetMap data extracts provided by Geofabrik.
The client is using Angular, Typescript and OpenLayers.
The server is using the Scala programming language, SpringBoot, MongoDB database, a local OverpassAPI instance, JTS topology suite, JGraphT, ScalaTest and others.
Point of interest icons are by Map Icons Collection.
Other icons are from www.flaticon.com and are licensed by CC 3.0 BY. These icons are made by: Scott de Jonge, Vitaly Gorbachev, Freepik, Plainicon, Google, Smashicons, dmitri13 and Roundicons.