A narrative web experience telling the story of resistance in occupied Norway during World War II. Follow Erik Solberg, a fisherman's son turned soldier, through ten chapters of survival, resistance, and the personal cost of war.
This project presents a chapter-based narrative set during the Battles of Narvik and the subsequent occupation of Norway. The story explores themes of resistance, occupation, and survival through the eyes of a Norwegian soldier who becomes part of the local resistance movement.
- Astro - Static site generator
- Content Collections - Type-safe chapter management
- Custom fonts: Playfair Display, Lora, DM Sans
- SEO optimization with schema markup
/
├── public/ # Static assets
├── src/
│ ├── assets/ # Images and media
│ ├── components/ # Reusable Astro components
│ ├── content/
│ │ ├── config.ts # Content collection schema
│ │ └── chapters/ # 10 markdown chapters (01-10)
│ ├── layouts/
│ │ ├── Layout.astro # Base layout
│ │ └── ChapterLayout.astro # Chapter-specific layout
│ ├── pages/
│ │ ├── index.astro # Home page
│ │ └── chapters/
│ │ └── [slug].astro # Dynamic chapter routes
│ ├── styles/
│ │ └── global.css # Global styles
│ └── config.ts # Site configuration
└── package.json
All commands are run from the root of the project:
| Command | Action |
|---|---|
npm install |
Install dependencies |
npm run dev |
Start local dev server at localhost:4321 |
npm run build |
Build production site to ./dist/ |
npm run preview |
Preview build locally before deploying |
npm run format |
Format code with Prettier |
Each chapter is a markdown file with frontmatter containing:
title- Chapter titleorder- Chapter number (1-10)description- Brief chapter summaryepigraph- Opening quote (optional)epigraphAuthor- Quote attribution (optional)
Edit src/config.ts to update site metadata:
- Site URL
- Base URL
- Site title
- Site description
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)