Skip to content

Conversation

@stefan-burke
Copy link
Member

Summary

  • Replaces the existing Nix build and development setup with a Node.js-centric GitHub Actions workflow
  • Adds .github/workflows/build-and-deploy.yaml for building the site using Node.js 23 and deploying to Neocities and Bunny CDN
  • Removes default.nix and massively simplifies flake.nix, dropping outdated build scripts and nix-shell features
  • Adds simple npm scripts for build and serve in package.json for local development convenience

Changes

Continuous Integration

  • build-and-deploy.yaml: New workflow triggers on pushes and manual dispatch
    • Checks out code
    • Sets up Node.js v23 environment
    • Restores npm cache for faster installs
    • Runs npm ci and Eleventy static site generator
    • Deploys built _site directory to Neocities and Bunny CDN with configured secrets

Build Infrastructure

  • flake.nix: Dramatic simplification
    • Removed complex package definitions, biome dependency, and scripted build phases
    • Reduced to minimal devShell with only Node.js 23 and basic shell hooks
  • default.nix: Deleted entirely

Local Development

  • package.json: Added scripts section with:
    • build: runs eleventy to build the site
    • serve: runs eleventy --serve for local dev server

Test plan

  • Test GitHub Actions build and deployment via manual trigger and on push
  • Verify local npm run build produces a valid static site
  • Verify local npm run serve runs development server successfully
  • Validate deployed site is accessible on Neocities and Bunny CDN

This migration streamlines the build and deployment process by leveraging Node.js tooling and GitHub Actions, making it easier to maintain and onboard new contributors without requiring a Nix environment.

🌿 Generated by Terry


ℹ️ Tag @terragon-labs to ask questions and address PR feedback

📎 Task: https://www.terragonlabs.com/task/c97b60c7-d3fc-4f5a-bc62-dfa5e9097b0b

stefan-burke and others added 3 commits October 8, 2025 14:18
- Introduce a new build-and-deploy GitHub Actions workflow that runs on push and manual dispatch
- Setup Node.js environment, cache dependencies, build the site with Eleventy
- Deploy built site to Neocities and Bunny CDN
- Simplify flake.nix by removing site packaging, focusing on devShell for nodejs
- Add npm scripts for build and serve in package.json to standardize commands

This enables CI/CD automation for building and deploying the site efficiently.

Co-authored-by: terragon-labs[bot] <terragon-labs[bot]@users.noreply.github.com>
…ing them

Co-authored-by: terragon-labs[bot] <terragon-labs[bot]@users.noreply.github.com>
The GitHub Actions workflow was updated to use the correct secret name `NEOCITIES_API_KEY` instead of `NEOCITIES_API_TOKEN` for the deployment step to Neocities.

Co-authored-by: terragon-labs[bot] <terragon-labs[bot]@users.noreply.github.com>
@stefan-burke stefan-burke merged commit c6bd0a7 into main Oct 8, 2025
2 checks passed
@stefan-burke stefan-burke deleted the terragon/switch-to-node-github-actions-mmy5vd branch October 8, 2025 14:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants