grain.social is a photo sharing platform built on atproto. grain.social
atproto photography appview
57
fork

Configure Feed

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

feat: add portrait photo to seed gallery

Add skyline-portrait.jpg and include it as a third item in
Alice's gallery to seed portrait-aspect-ratio content.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

+20
seeds/images/skyline-portrait.jpg

This is a binary file and will not be displayed.

+20
seeds/seed.ts
··· 153 153 // Upload photos 154 154 const cityNight = await uploadBlob(alice, "./seeds/images/city-night.jpg"); 155 155 const skyline = await uploadBlob(alice, "./seeds/images/skyline.jpg"); 156 + const skylinePortrait = await uploadBlob(alice, "./seeds/images/skyline-portrait.jpg"); 156 157 const forest = await uploadBlob(bob, "./seeds/images/forest.jpg"); 157 158 const wildlife = await uploadBlob(bob, "./seeds/images/wildlife.jpg"); 158 159 const filmCafe = await uploadBlob(carol, "./seeds/images/film-cafe.jpg"); ··· 208 209 "social.grain.gallery.item", 209 210 { gallery: aliceGallery.uri, item: alicePhoto2.uri, position: 1, createdAt: ago(49) }, 210 211 { rkey: "gi-skyline" }, 212 + ); 213 + 214 + const alicePhoto3 = await createRecord( 215 + alice, 216 + "social.grain.photo", 217 + { 218 + photo: skylinePortrait, 219 + alt: "Vertical view of the skyline through an alley", 220 + aspectRatio: { width: 3, height: 4 }, 221 + createdAt: ago(48), 222 + }, 223 + { rkey: "photo-skyline-portrait" }, 224 + ); 225 + 226 + await createRecord( 227 + alice, 228 + "social.grain.gallery.item", 229 + { gallery: aliceGallery.uri, item: alicePhoto3.uri, position: 2, createdAt: ago(48) }, 230 + { rkey: "gi-skyline-portrait" }, 211 231 ); 212 232 213 233 // ── Bob's gallery: "Forest Trail" (2 photos) ──