#development

SilverBullet has a browser client, a service worker and a server. The diagram is generated from the metadata on the component pages, which describe each part and its connections.

Top-level Architecture

${mermaid.diagram(mermaid.relationGraph{ pages = query[[from index.pages("component")]], groupBy = "partOf", direction = "LR" })}

The three layers

The browser’s Object Index supports structured queries. The Server’s search index supports full-text and semantic search. They are separate systems. Desktop runs the shared client and a local embedded server against its local space. It does not need browser-style file synchronization between them. Desktop Sync optionally connects that folder to an external Server.

Components

Every box in the diagram is a page tagged component:

Loading SilverBullet…