Skip to content

SSR, server-side search, similar items, and QoL improvements#1

Merged
sandsower merged 4 commits intomainfrom
pr1-ssr-search-qol
Apr 3, 2026
Merged

SSR, server-side search, similar items, and QoL improvements#1
sandsower merged 4 commits intomainfrom
pr1-ssr-search-qol

Conversation

@sandsower
Copy link
Copy Markdown
Owner

Summary

  • SSR for item detail pages with OG meta tags — Facebook/Twitter shares now show item photo, title, and location
  • Server-side search API with ilike + cursor pagination, replaces the hard limit(50) client query
  • "Similar items" section on detail page using the existing nearby_items PostGIS function
  • Browser locale detection defaults non-Icelandic browsers to English
  • PostHog events for share and flyer interactions
  • Back navigation preserves homepage state

No migration needed

All changes work against the current schema. This is PR 1 of 2 — expiry/renewal and match alerts follow in PR2 after migrations.

Test plan

  • Open an item detail page, view page source — confirm og:title/og:image/og:description are item-specific
  • Share an item link on Facebook — confirm rich preview card shows
  • Open the site in a browser with non-Icelandic locale — confirm English default
  • Search for an item by title — confirm server-side results
  • Click "Load more" on the homepage — confirm cursor pagination fetches next page
  • View an item detail page — confirm "Found nearby" / "Lost nearby" section appears when matches exist
  • Navigate to an item, press back — confirm homepage state is preserved

Pin drops with exaggerated squash & stretch, swings left,
and brand name fades in alongside it.
Recorded form flow (category, photo upload, title, description,
location, email, submit, success modal, Facebook share) and
composed with logo ender in Remotion. Switched mock data images
to picsum.photos for reliable loading.
Recorded homepage with real card images, spliced with existing
form flow video for seamless transition. All mock items now
use local placeholder image.
- SSR for item detail pages with OG meta tags for Facebook/Twitter previews
- Move OG tags from static app.html to conditional layout (item pages override)
- Server-side search API (/api/items/search) with ilike + cursor pagination
- Homepage filters now trigger server refetch instead of client-side filtering
- Similar items section on detail page using nearby_items PostGIS function
- Browser locale detection — non-Icelandic browsers default to English
- PostHog events: share_clicked, flyer_viewed, flyer_printed
- Back navigation preserves item store state
@sandsower sandsower merged commit f08c071 into main Apr 3, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant