Wowie what a gay little website for my gay little self aria.coffee
3
fork

Configure Feed

Select the types of activity you want to include in your feed.

Finalise vibes

Aria 5613e2f2 eedba4c3

+6 -6
src/content/albums/aria-board/3-kusanagi.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-1.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-10.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-11.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-12.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-13.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-14.webp

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-15.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-16.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-17.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-18.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-19.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-2.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-20.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-21.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-22.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-23.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-24.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-25.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-26.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-27.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-28.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-29.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-3.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-30.webp

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-31.jpg

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-4.webp

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-5.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-6.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-7.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-8.png

This is a binary file and will not be displayed.

src/content/albums/aria-board/9999-9.png

This is a binary file and will not be displayed.

+4 -2
src/pages/gallery/[id].astro
··· 27 27 28 28 const { album } = Astro.props; 29 29 const images = await getAlbumImages(album.id); 30 + const sorted = images.sort((a, b) => a.src.localeCompare(b.src)); 30 31 --- 31 32 <BaseLayout> 32 33 <div class="text-center my-16 mb-32"> ··· 41 42 class="mx-auto container my-8 sm:columns-2 md:columns-3 lg:columns-4 xl:columns-5" 42 43 > 43 44 { 44 - images.map((image) => ( 45 + sorted.map((image) => ( 45 46 <Picture 46 47 src={image} 47 48 alt={`Image from ${album.data.title} album`} 48 49 formats={["avif", "webp", "jpeg"]} 49 - quality={90} 50 + quality={95} 50 51 class="rounded-sm mb-4 border border-transparent hover:border-gray-300 transition-all duration-300 ease-in-out hover:shadow-lg" 51 52 loading="lazy" 53 + decoding="async" 52 54 /> 53 55 )) 54 56 }
+2 -4
src/utils/albums.ts
··· 1 1 export async function getAlbumImages(albumId: string) { 2 2 // 1. List all album files from collections path 3 3 let images = import.meta.glob<{ default: ImageMetadata }>( 4 - "/src/content/albums/**/*.{jpeg,jpg,webp,avif,png,jxl}" 4 + "/src/content/albums/**/*.{jpeg,jpg,webp,avif,png,jxl,heic}" 5 5 ); 6 6 7 7 // 2. Filter images by albumId ··· 13 13 const resolvedImages = await Promise.all( 14 14 Object.values(images).map((image) => image().then((mod) => mod.default)) 15 15 ); 16 - 17 - // 4. Shuffle images in random order 18 - resolvedImages.sort(() => Math.random() - 0.5); 16 + 19 17 return resolvedImages; 20 18 }