Share a folder

Guides

Share a folder

Some folders just need to be seen: a client's brief, a brand board, a deal room. sharedoc share turns a folder into a project and a join link in one command. Whoever opens the link is in, sees that project and nothing else, and can read, comment or edit it in the browser.

One command#

sharedoc share ~/clients/acme-brief

It does four things, in order:

  1. Creates a project named after the folder (--name to pick another).
  2. Pushes the folder's contents once, with the same preview and skips as a first sync.
  3. Mints a join link: editor, valid for 7 days, unless you say otherwise.
  4. Prints the link.

With several workspaces it asks which one on a terminal; pass --workspace to skip the question (it's required under --json). It refuses a folder that's already paired, and a git repository root unless you pass --force. For a repo, share its docs/ instead.

Options#

FlagWhat it does
--role editor|commenter|viewerWhat the link grants. Default editor.
--expires 24h|7d|30d|neverHow long the link works. Default 7d. People who already joined stay.
--labelA label on the link, so you can tell links apart later.
--privateMembers only: the rest of your workspace can't open the project.
--no-channelNo chat channel for the project.
--syncAlso add the folder to your sync set, so it keeps syncing (sharedoc sync install runs it).
--slug, --if-not-existsA stable slug, so an unattended retry reuses the project rather than making another.
sharedoc share ./brand-board --role viewer --expires 30d --sync
sharedoc share ~/deals/acme --name "Acme diligence" --private --workspace lumen --json

If it's interrupted#

share saves its progress in .share-doc/share-setup.json inside the folder before the first write: the slug, the stages done, and the join link once there is one. It's a private file (mode 0600) and never syncs. --resume picks up where it stopped with the original workspace and settings, uploads again safely, and returns the saved link.

sharedoc share ./acme-docs --resume --json

If a link was created but the answer was lost, --resume won't mint a second one: revoke the one it names with invite revoke, then resume. Errors under --json include the stage it reached and a recovery hint.

What the other side sees#

Opening a join link signed out shows who shared what, then takes them through sign-up or login and straight back. Signed in, it joins the project and lands on its manual, sharedoc-instructions.md.

A join link opened signed out: Join Lumen App, with Create an account and Log in
What someone sees when they open a join link before signing in.

Someone new to your workspace comes in as a guest: they see that project and none of your workspace's other projects. Someone already in the workspace keeps their role.

A link for a project you already have, an invitation by email, and sharing one file or folder without adding anyone to the project are all in Sharing & permissions.