My personal website
- Configure content collections to use image() helper for type-safe image references - Replace all <img> tags with <Image> component from astro:assets - Migrate images from /public to /src/assets for automatic optimization - Update blog posts to use relative paths in frontmatter (../../assets/photos/) - Remove unused images and duplicates from /public folder - Update Footer component to use optimized SVG icons - Clean up manifest.json to use favicon.ico instead of deleted photos Performance improvements: - remote.jpg: 1.8MB → 128KB (93% reduction) - me.png: 71KB → 12KB (83% reduction) - Automatic WebP conversion - Tree-shaking: only used images are optimized /public folder reduced from 2.3MB to 32KB (only essential files) Build output: 2.2MB with fully optimized images ready for S3 deployment |
||
|---|---|---|
| .github/workflows | ||
| .zed | ||
| public | ||
| src | ||
| .biomeignore | ||
| .env | ||
| .gitignore | ||
| .npmrc | ||
| .prettierignore | ||
| .prettierrc.json | ||
| astro.config.mjs | ||
| biome.json | ||
| package.json | ||
| pnpm-lock.yaml | ||
| README.md | ||
| tailwind.config.js | ||
| tsconfig.json | ||
lorenzoiovino.com
My personal website
This project is built with Astro and TailwindCSS.
Tech Stack
- Framework: Astro - Static site generator
- Styling: TailwindCSS - Utility-first CSS framework
- Package Manager: pnpm
- Language: TypeScript
🌐 Deployment
The site is configured to be deployed as a static site. The build output is in the dist/ directory.
Author
Lorenzo Iovino