Create or open the GitHub repository
Upload the complete project, including site/ and .github/workflows/pages.yml, to the default branch.
The project includes a custom GitHub Actions workflow that publishes the static site/ directory. No Node.js, Jekyll or server process is required.
Upload the complete project, including site/ and .github/workflows/pages.yml, to the default branch.
In the repository, open Settings → Pages. Under Build and deployment, select GitHub Actions.
The Pages workflow validates the entry page, uploads the static site artifact and deploys it to the github-pages environment.
The workflow summary provides the site URL. Project sites normally use https://OWNER.github.io/REPOSITORY/.
The workflow follows the current GitHub Pages artifact deployment model.
name: Deploy GitHub Pages
on:
push:
branches: [main]
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
jobs:
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/configure-pages@v5
- uses: actions/upload-pages-artifact@v4
with:
path: site
- id: deployment
uses: actions/deploy-pages@v4Serve the site from the repository root, then open the local URL.
python -m http.server 8000 --directory site # Open http://127.0.0.1:8000