Repository navigation
Update setup, pipeline and dependencies - #8
Merged
Merged
Conversation
Node, IDE files, the license year, the pipeline and all npm dependencies are outdated. The plan orders the upgrades so that every commit builds and checks each step against screenshots of the current site. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Node 26 becomes the active LTS on 2026-10-28, while Node 22 has already moved to maintenance. Astro 7 needs at least Node 22.23.4, so the new runtime has to be in place before that upgrade. The builder image is pinned by digest, like the nginx image. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
npm install may resolve newer versions than the ones in package-lock.json, so the image could ship dependencies that were never built or tested locally. npm ci installs exactly what the lockfile records. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The .idea directory holds personal IDE state that the IDE regenerates on import. Keeping it in the repository only produces noise for anyone using a different setup. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The license notice still named 2024 only, although the site has been changed since. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Tailwind 4 replaces the @astrojs/tailwind integration with the @tailwindcss/vite plugin and moves configuration from tailwind.config.cjs into CSS. Preflight stays disabled, as before. Tailwind 4 relies on native cascade layers. Unlayered rules beat every layered utility, so base.css now lives in the base layer. Otherwise its element rules, such as the paragraph margin, would override utilities like m-0. The docs and public directories are excluded from class scanning to keep unused utilities out of the stylesheet. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The 0.1 line no longer receives updates. Version 0.2 keeps the Image and Exclude options used here, so the configuration stays as it is. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
astro-robots-txt has not been updated since 2023 and pulls in its own copy of Zod 3, while newer Astro versions ship Zod 4. The generated file is three static lines, so a file in public replaces the dependency. The sitemap URL is now fixed to https://vinado.de, the only site the pipeline builds. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Astro 7 changes the compressHTML default to 'jsx', which drops the whitespace around inline elements. The footer separators would then render as "Vincent Nadoll |PGP Keys". Setting compressHTML to true keeps the whitespace handling of Astro 5. The sitemap integration moves to its current release together with Astro. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The lockfile had grown through several in-place upgrades and still carried entries from removed packages. A fresh resolve records current versions and the native binaries for every platform, including the Alpine builder image. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The workflow referenced outdated major tags. Tags can be moved after the fact, so a compromised action could change what runs with the Docker Hub credentials. Each action now points to the commit of its current release, with the version as a comment for readability. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The workflow only ran on version tags, so pull requests were merged without any check that the site still builds. Pull requests now run the same multi-platform build but skip the Docker Hub login and the push, so they never need the registry secrets. The token is limited to read access because no step writes to the repository. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Dependencies, base images and actions had drifted for almost two years without anyone noticing. Dependabot now proposes updates weekly and keeps the digest and commit pins current. Node major versions are excluded because the LTS line is chosen by hand. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The upgrade to Astro 7, Tailwind CSS 4 and Node 26 changes the build toolchain and the pipeline but not the site, so it ships as a new minor version. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings Node, the pipeline and all npm dependencies up to date. The site itself looks the same. Twelve screenshots (three pages, light and dark, mobile and desktop) are pixel-identical to main, both from the preview server and from the nginx image.
npm ciinstead ofnpm install@tailwindcss/vite.base.cssmoves into thebaselayer, otherwise its element rules would override utilities.compressHTML: true, which keeps the spaces around the footer separators@playform/compress0.2, a staticrobots.txtinstead of the unmaintainedastro-robots-txtand a freshly resolved lockfile.ideauntracked, copyright extended to 2026The website already shows a copyright notice in the footer, so no change was needed there. Follow-ups are #4, #5, #6 and #7.
Closes #3
🤖 Generated with Claude Code