My personal photography portfolio.
- Framework: Svelte 5 with SvelteKit
- Components: shadcn-svelte
- Storage: S3-compatible object storage
- Image Optimisation: wsrv.nl
Photos are organised in folders, each with a metadata.yaml
file to provide context and tags. The root folder includes a metadata.yaml
file with a list of all tags available across the portfolio.
Example of folder-specific metadata.yaml
title: NYC 2024
date: 2024-02
description: Photography in New York City.
tags: ["black-and-white", "street", "urban"]
photos: # Photo metadata is optional.
1.jpg:
title: Oswald
description: Portrait of my friend, Oswald, in Times Square
tags: ["portrait"]
2.jpg:
tags: ["landscape"]
Example of root metadata.yaml
tags:
- black-and-white
- street
- urban
- Clone the repository:
git clone https://github.com/paaradiso/photography-portfolio.git
- Install dependencies:
cd photography-portfolio npm install
- Run the development server:
npm run dev
- Build for production:
npm run build