Please read the README first.
The frontend visualizes our processed data it also provides options to annotate and export the data.
- Create a
/.env
file in the root folder based on/.env.example
. - To test the login, you need to setup your own OSM OAuth 2-Application, see osm-auth and update the credentials.
Run nvm use
to user the recommended NodeJS version.
Run npm run dev
wich will start docker and ../processing
automatically if needed.
- Framework: NextJS with BlitzJS
- URL State Management: nuqs
- ORM: Prisma
- Styling: Tailwind CSS, Tailwind UI and Headless UI
In the app/
directory do the following:
- Make sure
npm run dev
works as expected. This will make sure all packages are patched. - Create a
.env.production.local
with settings likeNEXT_PUBLIC_APP_ORIGIN=http://127.0.0.1:3000 NEXT_PUBLIC_APP_ENV='staging' # 'staging', 'production'
- Run
npm run build
andnpm run start
to test the production bundle. There is also a dockerized version of our frontend which one can run withdocker compose --profile frontend up
.
- Favicons:
icon.svg
https://nextjs.org/docs/app/api-reference/file-conventions/metadata/app-icons Generator forfavicon.ico
https://realfavicongenerator.net/
All helper scripts run with bun.
- Update mapbox styles – See /scripts/MapboxStyles/README.md on how to fetch updated style definitions from Mapbox.
- Update regional masks – See /scripts/RegionalMasks/README.md on how to fetch updated the regional mask data.
- Update datasets – See /datasets/README.md on how to process and update external datasets.