Browse docs

Sharing

Share collections with anyone via a link

Alex lets you share entire collections with anyone — no account required. This is useful for distributing course materials, curating reading lists for a book club, or sharing a research collection with collaborators.

How sharing works

Sharing is built around share tokens: random, unguessable strings that act as access keys. When you share a collection, Alex generates a unique URL like:

https://your-server.com/shared/a1b2c3d4-e5f6-...

Anyone with that link can browse the collection and read its books in the browser. They don't need to log in or create an account.

Enabling sharing

  1. Open a collection from the Collections page.
  2. Click the Share button in the collection header.
  3. Alex generates a share link and displays it in a dialog.
  4. Copy the link and send it to your recipients.

What shared users can do

Recipients of a share link can:

  • See the collection name and description
  • Browse the books with covers, titles, and authors
  • Read any book (PDF or EPUB) directly in the browser using the same readers available to logged-in users

What shared users cannot do

  • Download book files directly (files are streamed to the in-browser reader only)
  • Edit the collection, add books, or remove books
  • See who owns the collection
  • Access any books outside the shared collection

Reading progress for shared users

Shared users get reading progress stored locally in their browser. Their position in a book is saved across page reloads but is not synced across devices or to the server. No anonymous user data is stored on the server.

Revoking access

To stop sharing a collection:

  1. Open the collection detail page.
  2. Click Stop Sharing.
  3. The share token is deleted and the link immediately stops working.

If you re-share the collection later, a new token is generated. Old links will not work — you'll need to distribute the new URL.

Privacy

  • The collection owner's identity (email, display name) is never exposed in the shared view.
  • Share tokens are UUIDv4 values with 122 bits of randomness, making them effectively unguessable.
  • Each public API endpoint validates that the requested book actually belongs to the shared collection. A valid share link cannot be used to access other books on the server.