Skip to content

refactor: modernize tooling, tests and metadata - #197

Open
trueberryless-bot wants to merge 2 commits into
trueberryless:mainfrom
trueberryless-bot:modernize
Open

trueberryless-bot wants to merge 2 commits into
trueberryless:mainfrom
trueberryless-bot:modernize

Conversation

@trueberryless-bot

Copy link
Copy Markdown
Contributor

Brings the site in line with the shared setup from template-files. The design is untouched.

Changes

  • Dependencies: Astro 7.3.5, @atproto/lex 0.3.13, @lucide/astro 1.48, sharp 0.35.5, Prettier 3.9.9, prettier-plugin-astro 1.1, fontless 0.4 → 1.2 (the fonts still build), TypeScript 6 (not 7), pnpm 11.28.0, Node 24+ and "type": "module". pnpm build succeeds.
  • package.json: name, bugs and repository still pointed to trueberryless-org/trueberryless. They now use felixs.dev and trueberryless/felixs.dev from the shared template.
  • Type check: added astro check (pnpm check). The four errors it found are fixed: fragmentLabel could call .replace on undefined, SkillChips typed its map key as nullable, and the project Card did not accept null descriptions or language. astro/tsconfigs/strictest reports 105 more errors (mostly indexed access), so I kept strict and dropped the unused React JSX settings.
  • Branding: the standard OG image (felixs-dev preset, 👋) and its emoji as favicon.svg, plus og:site_name and the image size and alt text.
  • Accessibility: the decorative year watermark on the blog is now aria-hidden.
  • Tooling: oxlint, Prettier (oxfmt does not support .astro), knip, and the shared workflows, .gitignore, .prettierignore and LICENSE. Removed the unused exports that knip found.
  • Tests, run in CI: 18 Vitest tests for cache.ts, posts.ts and buildReadingSummary (100 % coverage of cache.ts and posts.ts), and 34 Playwright tests on desktop and mobile against the built node server: headings and titles of every page, the 404 page, canonical and OG metadata, no horizontal overflow, and axe checks in both color schemes.

Not covered

  • data.ts (863 lines of GitHub and ATproto fetching) has no tests and is excluded from coverage. The end-to-end tests only assert what does not depend on that data, because the server islands fetch it at request time. Mocking that layer is a good follow-up.
  • oxlint still reports 3 no-map-spread warnings.
  • The README badge used trueberryless.org for the page speed check. It now uses felixs.dev.

Verified

astro check, oxlint, Prettier, knip, vitest --coverage and the 34 Playwright tests pass locally.

🤖 Generated with Claude Code

trueberryless-bot and others added 2 commits September 30, 2026 18:20
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@netlify

netlify Bot commented Sep 30, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for felixs-homepage ready!

Name Link
🔨 Latest commit acaf892
🔍 Latest deploy log https://app.netlify.com/projects/felixs-homepage/deploys/6abd36d077ce970008c5fab8
😎 Deploy Preview https://deploy-preview-197--felixs-homepage.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@github-actions github-actions Bot added 🚨 action Changes in GitHub workflows or actions 🚧 config Configuration file updates ✒️ documentation Documentation updates, like README changes 📦 package Updates in package structure or package.json labels Sep 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🚨 action Changes in GitHub workflows or actions 🚧 config Configuration file updates ✒️ documentation Documentation updates, like README changes 📦 package Updates in package structure or package.json

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant