Skip to content

feat: show shared pages and boards to guests - #86

Merged
AmrMsCLL merged 1 commit into
mainfrom
feat/guest-pages
Oct 9, 2026
Merged

AmrMsCLL merged 1 commit into
mainfrom
feat/guest-pages

Conversation

@AmrMsCLL

@AmrMsCLL AmrMsCLL commented Oct 9, 2026

Copy link
Copy Markdown
Member

The last unbuilt part of Boards B1: guest links for pages and boards. Shared links used to show only the title.

  • Share button on pages and boards (editors only): Create a view link (30 days), copy it, or turn a link off. CopyLink moved out of the event page into components/CopyLink.tsx so both use it.
  • Guest view: GET /share/:code now also returns content: a page's document state, or a board's elements. A shared page renders read-only with the same blocks as the editor (callouts, toggles, tables and so on); a shared board renders as a drawing.
  • Images for guests: GET /share/:code/files/:fileId serves a file only when the shared item links to it as an attachment (an image on the page or board); anything else is 404. Pages and boards load images through a small file-source context (components/file-source.ts), so the signed-in app keeps using /files/:id.
  • The editor's content extensions moved into pageContent() in note-extensions.tsx, shared by the editor and the guest view. BoardPreview split into fetching and BoardDrawing.
  • Not built: edit guest links (guests editing live without an account). Boards embedded inside a shared page still use the signed-in preview, so guests see "This board could not be shown" for them.

Checked in the browser (local stack): a shared board shows its shapes, notes and an image loaded through the guest file route; a shared page renders read-only with every block type.

Tests: guest page and board cases in test/agenda.spec.tsx, share button case in test/notes.spec.tsx; test/integration/notes.spec.ts covers shared content and that guests only get the images on the shared item, invitations.spec.ts the response shape (CI).

@github-actions github-actions Bot added the size/l 201-600 changed lines, excluding lockfiles label Oct 9, 2026
@AmrMsCLL
AmrMsCLL merged commit 9181f6a into main Oct 9, 2026
7 checks passed
@AmrMsCLL
AmrMsCLL deleted the feat/guest-pages branch October 9, 2026 11:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/l 201-600 changed lines, excluding lockfiles

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant