feat: add SEO optimization — meta tags, sitemap, structured data (#128) #34
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Deploy Astro to GitHub Pages | |
| on: | |
| push: | |
| branches: | |
| - main | |
| permissions: | |
| contents: read | |
| pages: write | |
| id-token: write | |
| concurrency: | |
| group: "pages" | |
| cancel-in-progress: false | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: "22.12.0" | |
| cache: npm | |
| cache-dependency-path: astro-site/package-lock.json | |
| - name: Install dependencies | |
| working-directory: astro-site | |
| run: npm ci | |
| - name: Create assets symlink | |
| run: mkdir -p astro-site/src/content && ln -s ../../../assets astro-site/src/content/assets | |
| - name: Build site | |
| working-directory: astro-site | |
| run: npm run build | |
| - name: Create base path symlink for link checker | |
| run: ln -s . astro-site/dist/tutorial-git | |
| - name: Check links | |
| uses: lycheeverse/lychee-action@v2 | |
| with: | |
| args: --root-dir astro-site/dist --config lychee.toml 'astro-site/dist/**/*.html' | |
| fail: true | |
| - name: Upload artifact | |
| uses: actions/upload-pages-artifact@v3 | |
| with: | |
| path: astro-site/dist/ | |
| deploy: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| steps: | |
| - name: Deploy to GitHub Pages | |
| id: deployment | |
| uses: actions/deploy-pages@v4 |