chore(site): bump deps to latest; fix gh-pages deploy path#75
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the site/ (Astro) app’s toolchain to newer versions (Astro 6 + Tailwind 4 + lucide-react v1), migrates Tailwind theme configuration into CSS (@theme), replaces the removed Lucide brand icon with an inline GitHub SVG, and fixes the GitHub Pages deploy artifact path to match Astro’s dist/ output.
Changes:
- Upgrade Astro + Tailwind + lucide-react (and related build deps), including switching Tailwind’s PostCSS integration to
@tailwindcss/postcss. - Move Tailwind theme tokens/animations from
tailwind.config.jsintosite/src/styles/globals.cssusing Tailwind v4 CSS-first config. - Fix GitHub Pages deployment to upload
./site/distinstead of the legacy./site/out.
Reviewed changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
site/tailwind.config.js |
Removes the old Tailwind v3 config in favor of Tailwind v4 CSS-first configuration. |
site/src/styles/globals.css |
Adds Tailwind v4 @import, @theme tokens, custom dark variant, and keyframes/utilities. |
site/src/pages/_HomePage.tsx |
Replaces Lucide’s removed GitHub brand icon with an inline SVG component. |
site/postcss.config.js |
Switches PostCSS Tailwind plugin to @tailwindcss/postcss. |
site/package.json |
Bumps dependencies and adds @tailwindcss/postcss. |
site/package-lock.json |
Lockfile updates reflecting the dependency bumps. |
site/astro.config.mjs |
Removes @astrojs/tailwind integration and relies on PostCSS config. |
.github/workflows/main.yml |
Fixes Pages artifact upload path to ./site/dist. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+20
to
+22
| /* Class-based dark mode: opt in via `.dark` ancestor (DarkModeToggle | ||
| sets it on <html>). Was `darkMode: "class"` in v3 config. */ | ||
| @custom-variant dark (&:where(.dark, .dark *)); |
| // SWC plugin handles TC39 stage-3 decorators that typegres uses on | ||
| // `@tool()` — the friction Next 14's compiler couldn't accommodate. | ||
| // | ||
| // Tailwind 3 is wired through postcss.config.js (Astro picks it up |
Comment on lines
20
to
+25
| "dependencies": { | ||
| "@electric-sql/pglite": "^0.4.4", | ||
| "@monaco-editor/react": "^4.7.0", | ||
| "lucide-react": "^0.515.0", | ||
| "monaco-editor": "^0.53.0", | ||
| "@tailwindcss/postcss": "^4.2.4", | ||
| "lucide-react": "^1.14.0", | ||
| "monaco-editor": "^0.54.0", |
Comment on lines
+6
to
+12
| // lucide dropped brand icons in v1 (trademark concerns). Inline the | ||
| // official GitHub mark — small, well-known, no third-party dep. | ||
| const GithubIcon = ({ className }: { className?: string }) => ( | ||
| <svg viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" className={className}> | ||
| <path d="M12 .5C5.65.5.5 5.65.5 12c0 5.08 3.29 9.39 7.86 10.91.58.11.79-.25.79-.55 0-.27-.01-1-.01-1.96-3.2.69-3.87-1.37-3.87-1.37-.52-1.33-1.27-1.68-1.27-1.68-1.04-.71.08-.7.08-.7 1.15.08 1.76 1.18 1.76 1.18 1.02 1.75 2.68 1.24 3.34.95.1-.74.4-1.24.72-1.53-2.55-.29-5.24-1.28-5.24-5.7 0-1.26.45-2.29 1.18-3.1-.12-.29-.51-1.46.11-3.05 0 0 .96-.31 3.16 1.18a10.94 10.94 0 0 1 5.76 0c2.2-1.49 3.16-1.18 3.16-1.18.62 1.59.23 2.76.11 3.05.74.81 1.18 1.84 1.18 3.1 0 4.43-2.69 5.41-5.26 5.69.41.36.78 1.06.78 2.14 0 1.55-.01 2.79-.01 3.17 0 .31.21.67.8.55C20.71 21.39 24 17.08 24 12c0-6.35-5.15-11.5-12-11.5z"/> | ||
| </svg> | ||
| ); |
|
|
||
| // lucide dropped brand icons in v1 (trademark concerns). Inline the | ||
| // official GitHub mark — small, well-known, no third-party dep. | ||
| const GithubIcon = ({ className }: { className?: string }) => ( |
- astro 5 → 6 (+ @astrojs/{mdx,react} 5, @astrojs/check latest);
closes the define:vars XSS advisory.
- tailwindcss 3 → 4: theme tokens move from tailwind.config.js into
`@theme` blocks in globals.css; postcss plugin → @tailwindcss/postcss;
`darkMode: "class"` re-expressed as `@custom-variant dark`. Drop
@astrojs/tailwind — postcss picks tailwind up directly.
- lucide-react 0.515 → 1.14: brand icons removed in v1; inline the
GitHub mark as a small SVG component in _HomePage.
- @types/node 22 → 25, esbuild-wasm 0.25 → 0.28, postcss/react patch
bumps via npm update.
- monaco-editor pinned to ^0.54 (0.55 deprecates the
monaco.languages.typescript namespace types — runtime still works
but the type erasure breaks playground TS integration; migrating to
the new TS-language-server is its own task).
Workflow:
- gh-pages deploy was uploading ./site/out (Next-era path); Astro
builds to ./site/dist. One-line fix in main.yml.
Verified: site build clean, 17/17 site tests, 523/523 core tests,
6/6 examples, astro check 0 errors. Remaining 7 moderate audit items
are transitive dev-only (dompurify in monaco 0.54, yaml in
@astrojs/check) — fix gated on the monaco / @astrojs/check upgrades
above.
4eb17bb to
c79a322
Compare
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.
@themeblocks in globals.css; postcss plugin → @tailwindcss/postcss;darkMode: "class"re-expressed as@custom-variant dark. Drop @astrojs/tailwind — postcss picks tailwind up directly.Workflow:
Verified: site build clean, 17/17 site tests, 523/523 core tests, 6/6 examples, astro check 0 errors. Remaining 7 moderate audit items are transitive dev-only (dompurify in monaco 0.54, yaml in @astrojs/check) — fix gated on the monaco / @astrojs/check upgrades above.