Skip to content

Conversation

@ayasy-el
Copy link

Summary

  • Add REST endpoint GET /api/v1/link:preview to return title/description/image with relative/protocol-relative image
    resolution and first- fallback.
  • Introduce link preview dialog in the editor to fetch metadata, allow edits, and insert serialized preview blocks into
    memo content.
  • Render preview cards in memo content/editor; add LinkPreview types/components, sanitize schema update for data-*, and i18n strings (en/id).

Motivation

Provide richer memo context by letting users fetch and display link previews without manual formatting. Establish
groundwork for future gRPC/gateway parity via proto stub.

Notes

  • proto/api/v1/link_service.proto is added for future gateway/gRPC use; current implementation is REST-only.
  • No DB migrations required.

Demo

Screencast_20251214_165049.mp4

ayasy-el added 2 commits December 14, 2025 16:26
- add REST GET /api/v1/link:preview to return title/description/image

- resolve relative/protocol-relative image URLs; fallback to first <img> when og:image missing

- add first-image scraper and guard HTML meta fetch against 4xx/5xx responses

- register route in server startup; add LinkService proto stub for future gateway/grpc use (not yet wired)
- add link preview dialog to scrape metadata via new API with timeout/edit support

- serialize previews into memo content as data-* blocks and render cards in editor/view

- add LinkPreview types, components, and locale strings; allow data-* on div in sanitize schema
@ayasy-el ayasy-el requested a review from boojack as a code owner December 14, 2025 09:54
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