Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Kopier denne filen til .env og fyll inn. .env skal ikke committes.

# Lokalt, via SSH-tunnel til VM-en:
# ssh -N -L 5433:/var/run/postgresql/.s.PGSQL.5432 <brukernavn>@it2810-34.idi.ntnu.no
DATABASE_URL=postgres://gruppe@localhost:5433/norwegian_explorer

# På VM-en (koble til via socket i stedet for nettverk):
# DATABASE_URL=postgres://gruppe@%2Fvar%2Frun%2Fpostgresql/norwegian_explorer
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,7 @@ dist-ssr
.env
.env.*
!.env.example

*.nosync/
public/cesium/

16 changes: 16 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,21 @@ Katalogen gir hver rute en stabil ID, slår sammen rutedeler, beregner lengde og

GraphQL-spørringen `routes` støtter tekstsøk, minimums- og maksimumslengde, kartgrenser, paginering og antall treff. Resultatene grupperes etter rutenavn. Når en gruppe åpnes, velges variant i detaljpanelet ved kartet. Geometri hentes først gjennom `route` for den valgte varianten.

## Fjellområder og turpunkter

Rensede data som appen henter fra, ligger i skjemaet `silver`. SQL-filene som lager dem ligger i `server/sql/silver/`, og originaldataene endres ikke. Se [server/README.md](server/README.md) for hvordan backenden er satt opp og hvor hver grense kommer fra.

- `silver.osm_points_of_interest` er en materialisert visning med turisthytter, buer, gapahuker, teltplasser, topper, utsiktspunkter, turparkering, toaletter og drikkevann fra OpenStreetMap. Busskur, private steder og vanlig parkering er filtrert bort, og høyde og antall sengeplasser er gjort om til tall. Ved ny OSM-import oppdateres den med `REFRESH MATERIALIZED VIEW silver.osm_points_of_interest;`. Backend husker tallene for fjellområdene i 10 minutter, så start backend på nytt for å se endringer med en gang.
- `silver.mountain_areas` inneholder 15 fjellområder, blant annet Jotunheimen, Rondane og Hardangervidda.

Det finnes ingen offisiell avgrensning av landskapsområder som «Jotunheimen», så grensene er hentet fra det nærmeste som finnes:

- Jotunheimen, Rondane, Hardangervidda og Dovrefjell bruker fjellområdene fra OpenStreetMap (`natural=mountain_range`, © OpenStreetMap-bidragsytere, ODbL).
- Trollheimen, Breheimen, Femundsmarka, Blåfjella–Skjækerfjella, Saltfjellet, Lyngsalpan og Setesdalsheiane bruker nasjonalparken eller landskapsvernområdet fra Miljødirektoratets datasett Naturvernområder (NLOD).
- Romsdalsalpane, Sunnmørsalpane, Skarvheimen og Lofoten har ingen grense som passer i noen av kildene, så de er fortsatt håndlagde rektangler.

Mange hytter ligger like utenfor vernegrensene, så grensene fra OSM og Miljødirektoratet er utvidet med 3 km. De er også forenklet til omtrent 100 m nøyaktighet, så SQL-fila holder seg liten, og hver rad har en kommentar om hvor grensen kommer fra. Kolonnen `ssr_id` peker til Kartverkets offisielle navn i stedsnavnregisteret (SSR) der området er registrert. Grensen ligger i én kolonne av typen `MultiPolygon`, og både opptellingen og turpunktene på kartet hentes med `ST_Intersects` mot den.

## Start databaseversjonen lokalt

PostgreSQL må kjøre, og databasen `norwegian_explorer` må inneholde det importerte Kartverket-skjemaet. Kjør deretter i to terminaler:
Expand Down Expand Up @@ -53,6 +68,7 @@ npm run build
## Datakilder

- Kartverket, Tur- og friluftsruter: CC BY 4.0
- Kartverket, Sentralt stedsnavnregister (SSR): CC BY 4.0
- OpenStreetMap-bidragsytere og Geofabrik-uttrekk: ODbL

Registrerte rutestrekninger er ikke nødvendigvis komplette turforslag og skal ikke uten videre brukes til navigasjon.
13 changes: 13 additions & 0 deletions fjellomrade.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<!doctype html>
<html lang="nb">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Fjellområder · Utforsk Norge</title>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/fjellomrade-main.tsx"></script>
</body>
</html>
128 changes: 62 additions & 66 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
"@rolldown/plugin-babel": "^0.2.3",
"@types/babel__core": "^7.20.5",
"@types/node": "^24.13.3",
"@types/pg": "^8.23.1",
"@types/react": "^19.2.18",
"@types/react-dom": "^19.2.7",
"@vitejs/plugin-react": "^6.1.1",
Expand Down
Loading