A small business website for ultralight flight training.
This website is built with:
- Astro - Static site generator
- Contentful - Headless CMS (optional)
- GitHub Pages - Hosting
Development is done on the develop branch. Feature branches should be created from develop.
- Node.js 22+
npm install
npm run devnpm run build
npm run preview # preview the production build locallyBuild output is located in the dist folder.
Every push to develop automatically builds and deploys the site to GitHub Pages via GitHub Actions.
The workflow is defined in .github/workflows/github-pages.yml. It uses the native GitHub Pages deployment API — no personal access token is needed.
-
Go to Settings > Pages > Build and deployment > Source and select GitHub Actions.
-
Optionally, add Contentful secrets under Settings > Secrets and variables > Actions:
CONTENTFUL_SPACE_IDCONTENTFUL_DELIVERY_TOKENCONTENTFUL_PREVIEW_TOKEN
The site builds without these — it falls back to hardcoded content.
The Contentful client is configured in src/lib/contentful.ts. For local development:
cp .env.example .env
# Fill in your Contentful credentialsIn development mode, the client uses the Preview API (draft content). In production builds, it uses the Delivery API (published content only).
UNLICENSED