Personal site of Jay Ravaliya. Built with Astro, deployed to GitHub Pages.
npm install
npm run dev # http://localhost:4321npm run build # output: dist/
npm run preview # serve the built site locallyPush to main. The workflow at .github/workflows/deploy.yml builds the site and publishes it to GitHub Pages on every commit.
src/pages/— routes (index.astro,404.astro,posts/[slug].astro,projects/[slug].astro,rss.xml.ts)src/content/posts/— long-form writing (Markdown)src/content/projects/— projects index (Markdown frontmatter)src/content.config.ts— Zod schemas for both collectionssrc/components/— page sections (Hero, WritingList, ProjectList, etc.)src/layouts/— page shells (BaseLayout, ArticleLayout)src/styles/— theme tokens, global styles, prose stylessrc/site.ts— site name + taglinepublic/— files served verbatim at the site root (CNAME, resume, etc.)