Personal website built with Astro, Tailwind CSS, and DaisyUI. Based on the Astrofy template. Deployed on Netlify.
https://cristianrcv.netlify.app
- Astro — static site framework
- Tailwind CSS — utility-first CSS
- DaisyUI — component library (autumn theme)
- Netlify — hosting and CI/CD
├── src/
│ ├── components/
│ │ ├── cv/
│ │ │ └── TimeLine.astro
│ │ ├── BaseHead.astro
│ │ ├── Card.astro
│ │ ├── Footer.astro
│ │ ├── Header.astro
│ │ ├── HorizontalCard.astro
│ │ ├── SideBar.astro
│ │ ├── SideBarMenu.astro
│ │ └── SideBarFooter.astro
│ ├── content/
│ │ ├── blog/
│ │ ├── project/
│ │ ├── publication/
│ │ └── talk/
│ ├── layouts/
│ │ ├── BaseLayout.astro
│ │ └── PostLayout.astro
│ └── pages/
│ ├── blog/
│ ├── cv.astro
│ ├── index.astro
│ ├── projects.astro
│ ├── publications.astro
│ ├── talks.astro
│ └── rss.xml.js
├── public/
│ ├── favicon.svg
│ ├── profile.jpg
│ ├── files/
│ │ └── cv.pdf
│ └── img/
├── netlify.toml
├── astro.config.mjs
├── tailwind.config.cjs
├── package.json
└── tsconfig.json
- Home — bio, featured projects, latest blog posts
- CV — full work experience, education, and skills
- Projects — research and open-source projects
- Publications — academic publications with abstracts and links
- Talks — conference talks with slides and PDFs
- Blog — personal blog posts
npm install
npm run devThen open http://localhost:4321.
npm run buildOutput is generated in the dist/ folder. Netlify runs this automatically on every push to master.
Content lives in src/content/ as Markdown files, organized by collection (blog, project, publication, talk). Schemas are defined in src/content/config.ts.