Link Search Menu Expand Document

8 Multi Publish

Goals

Publish multiple sites using one workspace

Sub Goals

Make it possible to share links of multiple published sites from one workspace.

Context

Currently, to publish a new site, users have to create a new workspace, even if its to publish using the exact same vaults.

Similarly, if a user wants to reference urls from multiple published sites, they would need to keep multiple workspaces open.

Proposal

Introduce a sites parameter that is made from multiple site objects.

When a user uses Copy Note URL, Dendron can output one of the following:

  • if the note is part of one published site (as determined by siteHierarchies and duplicateNoteBehavior), we return the url
  • if the note is part of multiple published sites, we return a dropdown asking the user to pick a url
  • if the note is part of zero published sites, we return an error message

Details

Calculating a published site

This can be bothersome since we need to keep track of all hiearchies that are published and determine if they are unique to a single vault.

For phase one, we will default to returning a dropdown of all valid urls and having the user choose.

Example

sites:
    - 
    name: handbook
    copyAssets: true
    siteHierarchies:
        - handbook
    siteRootDir: docs
    usePrettyRefs: true
    siteUrl: 'https://handbook.dendron.so'
    title: Dendron Handbook
    duplicateNoteBehavior:
        action: useVault
        payload:
            - handbook
    - 
    name: wiki
    copyAssets: true
    siteHierarchies:
        - dendron
    siteRootDir: docs
    usePrettyRefs: true
    siteUrl: 'https://wiki.dendron.so'
    title: Dendron Wiki
    duplicateNoteBehavior:
        action: useVault
        payload:
            - dendron-site

Tradeoffs

We're introducing more complexity in the configuration for an easier publishing experience.