Source for omerbalyali.com, built with Astro and deployed to Cloudflare.
This project uses Node.js 24+ and pnpm.
pnpm install
pnpm exec playwright install chromiumpnpm run devTo preview on another device on the same local network:
pnpm run dev:lanHTTPS is optional for local development. Use it only when testing browser features that require a secure context:
pnpm run dev:lan:httpsThis expects local certificate files named localhost.pem and localhost-key.pem.
pnpm run check # Astro type/content checks
pnpm run lint # Astro check, Prettier check, and Stylelint
pnpm run format # Format files with Prettier
pnpm run build # Build the site
pnpm run preview # Preview the built site locally
pnpm run test # Build, unit tests, and Playwright tests
pnpm run test:unit # Unit tests only
pnpm run test:e2e # Main Playwright smoke/behavior tests
pnpm run test:a11y # Playwright accessibility checksThe test suite combines:
- Vitest unit tests for utility functions.
- Playwright route, metadata, navigation, feed, and interaction tests.
- Axe-powered accessibility checks for public routes in the sitemap.
Most Playwright tests run against astro preview, so run pnpm run build first when executing individual e2e specs manually.
pnpm dlx @astrojs/upgrade
pnpm outdated
pnpm update
pnpm run testFor major upgrades, review changelogs first, especially for Astro, Cloudflare/Wrangler, Playwright, and Stylelint.
This repository is source-available for reference. It is not open source and no license is granted to copy, modify, redistribute, or reuse the code or content.
Copyright © 2026 Ömer Balyalı. All rights reserved.