The third version of my personal portfolio, built to showcase my experience, selected work, and approach to frontend engineering.
- Responsive, accessible interface
- Light and dark themes
- Animated hero checklist with reduced-motion support
- Project content managed with Astro content collections
- SEO metadata, structured data, and sitemap generation
- Locally optimized fonts through Astro's Fonts API
- Node.js 22.12 or newer
- npm
Install the dependencies:
npm installStart the development server:
npm run devThe site will be available at localhost:4321.
| Command | Action |
|---|---|
npm run dev |
Start the local development server |
npm run build |
Build the production site to dist/ |
npm run check |
Run Astro and TypeScript checks |
npm run format:check |
Check formatting with Prettier |
npm run validate |
Run all project validation |
npm run preview |
Preview the production build locally |
npm run astro -- --help |
Display the Astro CLI help |
The site is configured as a static Astro project and can be deployed to Cloudflare Pages with these build settings:
| Setting | Value |
|---|---|
| Production branch | main |
| Build command | npm run build |
| Build output directory | dist |
| Node.js version | 22.12.0 or newer |
Connect the GitHub repository to Cloudflare Pages to enable automatic production and preview deployments.
Licensed under the MIT License.