alpha
Login
or
Join now
zephyra.zone
/
grain
Star
1
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
grain.social is a photo sharing platform built on atproto.
Star
1
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
Pulls
Pipelines
grain
/
app
/
lib
/
components
/
at
main
4 folders
Chad Miller
feat: add owner-only gallery edit page
6w ago
b5a1f49b
atoms
feat: add owner-only gallery edit page Adds a full edit UI at /profile/[did]/gallery/[rkey]/edit, accessible via the overflow menu on gallery cards for the owner account. Supports editing title, description, location, and labels; replacing, adding, removing, and reordering photos using the same canvas resize pipeline as the create flow; and per-photo alt text. Also populates the galleryState field (item URI and position) on photoViews in the hydration layer so the edit page can update and delete gallery.item records without extra fetches. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 month ago
molecules
feat: add owner-only gallery edit page Adds a full edit UI at /profile/[did]/gallery/[rkey]/edit, accessible via the overflow menu on gallery cards for the owner account. Supports editing title, description, location, and labels; replacing, adding, removing, and reordering photos using the same canvas resize pipeline as the create flow; and per-photo alt text. Also populates the galleryState field (item URI and position) on photoViews in the hydration layer so the edit page can update and delete gallery.item records without extra fetches. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 month ago
organisms
feat: minimal right sidebar with place and camera dedup - Flatten sidebar cards into a single continuous minimal layout; search as bordered input, uppercase section labels, compact footer with dot separators. - Dedupe locations server-side: getLocations groups by (locality, region, country) with USA→US country alias. getFeed?feed=location accepts a name param and unions all H3 cells sharing the display label via case-insensitive address matching. - Return h3Cells on LocationItem so LocationMapBanner can render a centroid + dynamic zoom across all cells in a place (was showing only one cell). - Normalize camera names server-side in getCameras: strip manufacturer legalese, dedup adjacent tokens, title-case all-caps brands. Rows that collide after normalization merge. Camera feed matches by normalization-equivalence so old raw URLs and new cleaned URLs both work. - Add /cameras and /locations index pages with "See all →" links in the sidebar when the section has more than seven items.
3 months ago
templates
feat: improve signed-out experience with prominent sign-in - Desktop sidebar: show logo, tagline, and sign-in button when signed out - Mobile bottom bar: show tagline and sign-in button instead of nav tabs - Mobile drawer: move sign-in button to top of drawer - Hide home icon and following feed tab when signed out - Widen sidebar column for signed-out text content - Simplify AuthBar to logout-only (sign-in moved to sidebar) - Update login placeholder to user.bsky.social Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
3 months ago