using astro
Some checks are pending
/ deploy (push) Waiting to run

This commit is contained in:
Loyyd 2026-06-11 08:29:29 +02:00
parent 8e40b8599b
commit 830585e2ba
15 changed files with 5371 additions and 15 deletions

View file

@ -1,7 +1,7 @@
# Site Structure
This is a local static site. Top-level pages are kept in `website/`, while blog
posts and speech archive pages are grouped into dedicated folders.
This is a local static site built with Astro. The current exported HTML source
is kept in `website/`, while Astro emits the served site into `dist/`.
## Root
@ -16,6 +16,11 @@ posts and speech archive pages are grouped into dedicated folders.
- `website/speeches/rev-dr-sun-myung-moon/*.html` - yearly speech archive pages
- `website/speeches/categories/*.html` - speech category archive pages
- `website/PAGES.md` - map of old folder paths to current HTML paths
- `src/pages/index.html.ts` - Astro endpoint for the home page
- `src/pages/[...route].ts` - Astro endpoint for all other existing HTML pages
- `src/lib/static-pages.ts` - maps `website/` files to Astro static routes
- `src/components/` - Astro shared layout components for ongoing migration
- `dist/` - generated site output, ignored by git
- `css/` - site-level stylesheets
- `js/` - site-level scripts
- `assets/` - images, PDFs, fonts, theme files, uploads, and vendor files
@ -23,14 +28,19 @@ posts and speech archive pages are grouped into dedicated folders.
- `scripts/components.mjs` - shared nav/sidebar/footer components
- `scripts/render-shared-layout.mjs` - renders shared layout components into pages
- `scripts/organize-content.mjs` - organizes exported blog and speech pages
- `scripts/copy-static-assets.mjs` - copies `assets/`, `css/`, and `js/` into `dist/`
- `docker/` and `compose.yaml` - local static server preview
- `.forgejo/` - deployment automation
## Shared Layout
The site remains static HTML, but common navigation, sidebar, and footer markup
is generated from `scripts/components.mjs`. Run `npm run render:layout` after
editing those components.
The current source pages remain static HTML, but common navigation, sidebar, and
footer markup is generated from `scripts/components.mjs`. Run
`npm run render:layout` after editing those components.
Astro components in `src/components/` are available for the next migration step:
converting individual pages from exported HTML into `.astro` or Markdown content
while reusing the same layout structure.
## Asset Layout
@ -45,6 +55,19 @@ editing those components.
Run:
```bash
npm run dev
```
Then open Astro's local URL, usually:
```text
http://localhost:4321
```
For the Nginx preview, build first:
```bash
npm run build
docker compose up
```