Source code for the Watertijdreis application.
This project uses:
- SvelteKit javascript framework;
- MapLibre mapping library;
- Allmaps Maplibre plugin to render maps directly from their IIIF endpoints;
- Protomaps background map;
- Geocode Earth geocoder.
The source data exists of IIIF Manifests and Georeference Annotations. These are generated in the repository watertijdreis-data and can be accessed through the following endpoint:
For the map overview and timeline thumbnails, image sprites are used which can be found in the static/sprites directory. They have been generated using the scripts in this repository.
Make sure to have a recent version of Node installed (^24) and install pnpm with Corepack by running corepack enable pnpm.
You can then run the application locally by executing the following commands:
# Install dependencies pnpm i # Run the development server pnpm run dev
The console may throw errors related to the missing Geocoder Earth and Protomaps keys. In order to add those keys, create a .env file in the root of the repository with the following contents:
PUBLIC_GEOCODE_EARTH_API_KEY=add-key-here PUBLIC_PROTOMAPS_KEY=add-key-here
To create a production version of the app, run:
pnpm run build
The main and dev branches of the application are automatically deployed using Render:
| Branch | Deployment |
|---|---|
main |
watertijdreis.nl |
dev |
dev.watertijdreis.nl |