docs(guide): relocate note list documentation

This commit is contained in:
Elian Doran 2025-07-22 18:33:46 +03:00
parent 92fa1cf052
commit 318f2d1f8c
No known key found for this signature in database
142 changed files with 1215 additions and 960 deletions

File diff suppressed because one or more lines are too long

View File

@ -6,18 +6,18 @@
of the note for easy navigation.</p>
<h2>Configuration</h2>
<ul>
<li>To hide the note list for a particular note, simply apply the <code>hideChildrenOverview</code>
<li data-list-item-id="eb5063d3ae8e7f0da6afcdd9c3250c426">To hide the note list for a particular note, simply apply the <code>hideChildrenOverview</code>
<a
href="#root/_help_zEY4DaJG4YT5">label</a>.</li>
<li>For some view types, such as Grid view, only a subset of notes will be
<li data-list-item-id="e50e31d45fae6051c1ff7fab14387aff7">For some view types, such as Grid view, only a subset of notes will be
displayed and pagination can be used to navigate through all of them for
performance reasons. To adjust the number of notes per page, set <code>pageSize</code> to
the desired number.</li>
</ul>
<h2>View types</h2>
<p>The view types dictate how the child notes are represented.</p>
<p>By default, the notes will be displayed in a grid, however there are also
some other view types available.</p>
<p>The view types dictate how the child notes are represented. By default,
the notes will be displayed in a grid, however there are also some other
view types available.</p>
<p>Generally the view type can only be changed in a&nbsp;<a class="reference-link"
href="#root/_help_GTwFsgaA0lCt">Collections</a>&nbsp;note from the&nbsp;
<a

View File

@ -1 +0,0 @@
<p>This is a clone of a note. Go to its <a href="../../Basic%20Concepts%20and%20Features/Notes/Note%20List/Calendar%20View.html">primary location</a>.</p>

View File

@ -1 +0,0 @@
<p>This is a clone of a note. Go to its <a href="../../Basic%20Concepts%20and%20Features/Notes/Note%20List/Geo%20Map%20View.html">primary location</a>.</p>

View File

@ -1 +0,0 @@
<p>This is a clone of a note. Go to its <a href="../../Basic%20Concepts%20and%20Features/Notes/Note%20List/Grid%20View.html">primary location</a>.</p>

View File

@ -1 +0,0 @@
<p>This is a clone of a note. Go to its <a href="../../Basic%20Concepts%20and%20Features/Notes/Note%20List/List%20View.html">primary location</a>.</p>

View File

@ -1 +0,0 @@
<p>This is a clone of a note. Go to its <a href="../../Basic%20Concepts%20and%20Features/Notes/Note%20List/Table%20View.html">primary location</a>.</p>

View File

@ -1,6 +1,6 @@
{
"formatVersion": 2,
"appVersion": "0.97.0",
"appVersion": "0.97.1",
"files": [
{
"isClone": false,

View File

@ -1,2 +1,16 @@
# attachments
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>attachmentId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Unique ID (e.g. <code>qhC1vzU4nwSE</code>)</td></tr><tr><th><code>ownerId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The unique ID of a row in&nbsp;<a class="reference-link" href="notes.md">notes</a>.</td></tr><tr><th><code>role</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The role of the attachment: <code>image</code> for images that are attached to a note, <code>file</code> for uploaded files.</td></tr><tr><th><code>mime</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The MIME type of the attachment (e.g. <code>image/png</code>)</td></tr><tr><th><code>title</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The title of the attachment.</td></tr><tr><th><code>isProtected</code></th><td>Integer</td><td>Non-null</td><td>0</td><td><code>1</code> if the entity is <a href="../Protected%20entities.md">protected</a>, <code>0</code> otherwise.</td></tr><tr><th><code>position</code></th><td>Integer</td><td>Non-null</td><td>0</td><td>Not sure where the position is relevant for attachments (saw it with values of 10 and 0).</td></tr><tr><th><code>blobId</code></th><td>Text</td><td>Nullable</td><td><code>null</code></td><td>The corresponding <code>blobId</code> from the&nbsp;<a class="reference-link" href="blobs.md">blobs</a>&nbsp;table.</td></tr><tr><th><code>dateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Localized modification date (e.g. <code>2023-11-08 18:43:44.204+0200</code>)</td></tr><tr><th><code>utcDateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Modification date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr><tr><th><code>utcDateScheduledForErasure</code></th><td>Text</td><td>Nullable</td><td><code>null</code></td><td>&nbsp;</td></tr><tr><th><code>isDeleted</code></th><td>Integer</td><td>Non-null</td><td>&nbsp;</td><td><code>1</code> if the entity is <a href="../Deleted%20notes.md">deleted</a>, <code>0</code> otherwise.</td></tr><tr><th><code>deleteId</code></th><td>Text</td><td>Nullable</td><td><code>null</code></td><td>&nbsp;</td></tr></tbody></table></figure>
| Column Name | Data Type | Nullity | Default value | Description |
| --- | --- | --- | --- | --- |
| `attachmentId` | Text | Non-null | | Unique ID (e.g. `qhC1vzU4nwSE`) |
| `ownerId` | Text | Non-null | | The unique ID of a row in <a class="reference-link" href="notes.md">notes</a>. |
| `role` | Text | Non-null | | The role of the attachment: `image` for images that are attached to a note, `file` for uploaded files. |
| `mime` | Text | Non-null | | The MIME type of the attachment (e.g. `image/png`) |
| `title` | Text | Non-null | | The title of the attachment. |
| `isProtected` | Integer | Non-null | 0 | `1` if the entity is [protected](../Protected%20entities.md), `0` otherwise. |
| `position` | Integer | Non-null | 0 | Not sure where the position is relevant for attachments (saw it with values of 10 and 0). |
| `blobId` | Text | Nullable | `null` | The corresponding `blobId` from the <a class="reference-link" href="blobs.md">blobs</a> table. |
| `dateModified` | Text | Non-null | | Localized modification date (e.g. `2023-11-08 18:43:44.204+0200`) |
| `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |
| `utcDateScheduledForErasure` | Text | Nullable | `null` | |
| `isDeleted` | Integer | Non-null | | `1` if the entity is [deleted](../Deleted%20notes.md), `0` otherwise. |
| `deleteId` | Text | Nullable | `null` | |

View File

@ -1,2 +1,2 @@
# attributes
<figure class="table"><table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>attributeId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Unique Id of the attribute (e.g. <code>qhC1vzU4nwSE</code>), can also have a special unique ID for&nbsp;<a class="reference-link" href="../Special%20notes.md">Special notes</a>&nbsp;(e.g. <code>_lbToday_liconClass</code>).</td></tr><tr><th><code>noteId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The ID of the <a href="notes.md">note</a> this atttribute belongs to</td></tr><tr><th><code>type</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The type of attribute (<code>label</code> or <code>relation</code>).</td></tr><tr><th><code>name</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The name/key of the attribute.</td></tr><tr><th><code>value</code></th><td>Text</td><td>Non-null</td><td><code>""</code></td><td><ul><li>For <code>label</code> attributes, a free-form value of the attribute.</li><li>For <code>relation</code> attributes, the ID of the <a href="notes.md">note</a> the relation is pointing to.</li></ul></td></tr><tr><th><code>position</code></th><td>Integer</td><td>Non-null</td><td>0</td><td>The position of the attribute compared to the other attributes. Some predefined attributes such as <code>originalFileName</code> have a value of 1000.</td></tr><tr><th><code>utcDateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Modification date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr><tr><th><code>isDeleted</code></th><td>Integer</td><td>Non-null</td><td>&nbsp;</td><td><code>1</code> if the entity is <a href="../Deleted%20notes.md">deleted</a>, <code>0</code> otherwise.</td></tr><tr><th><code>deleteId</code></th><td>Text</td><td>Nullable</td><td><code>null</code></td><td>&nbsp;</td></tr><tr><th><code>isInheritable</code></th><td>Integer</td><td>Nullable</td><td>0</td><td>&nbsp;</td></tr></tbody></table></figure>
<table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>attributeId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Unique Id of the attribute (e.g. <code>qhC1vzU4nwSE</code>), can also have a special unique ID for&nbsp;<a class="reference-link" href="../Special%20notes.md">Special notes</a>&nbsp;(e.g. <code>_lbToday_liconClass</code>).</td></tr><tr><th><code>noteId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The ID of the <a href="notes.md">note</a> this atttribute belongs to</td></tr><tr><th><code>type</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The type of attribute (<code>label</code> or <code>relation</code>).</td></tr><tr><th><code>name</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The name/key of the attribute.</td></tr><tr><th><code>value</code></th><td>Text</td><td>Non-null</td><td><code>""</code></td><td><ul><li>For <code>label</code> attributes, a free-form value of the attribute.</li><li>For <code>relation</code> attributes, the ID of the <a href="notes.md">note</a> the relation is pointing to.</li></ul></td></tr><tr><th><code>position</code></th><td>Integer</td><td>Non-null</td><td>0</td><td>The position of the attribute compared to the other attributes. Some predefined attributes such as <code>originalFileName</code> have a value of 1000.</td></tr><tr><th><code>utcDateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Modification date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr><tr><th><code>isDeleted</code></th><td>Integer</td><td>Non-null</td><td>&nbsp;</td><td><code>1</code> if the entity is <a href="../Deleted%20notes.md">deleted</a>, <code>0</code> otherwise.</td></tr><tr><th><code>deleteId</code></th><td>Text</td><td>Nullable</td><td><code>null</code></td><td>&nbsp;</td></tr><tr><th><code>isInheritable</code></th><td>Integer</td><td>Nullable</td><td>0</td><td>&nbsp;</td></tr></tbody></table>

View File

@ -1,2 +1,2 @@
# blobs
<figure class="table"><table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>blobId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The unique ID of the blob (e.g. <code>XXbfAJXqWrYnSXcelLFA</code>).<p>Important: this ID is actually a hash of the content, see <code>AbstractBeccaEntity#saveBlob</code>! It is a logic error to modify an existing blob.</p></td></tr><tr><th><code>content</code></th><td>Text</td><td>Nullable</td><td><code>null</code></td><td><p>The content of the blob, can be either:</p><ul><li>text (for plain text notes or HTML notes).</li><li>binary (for images and other types of attachments)</li></ul></td></tr><tr><th><code>dateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Creation date with timezone offset (e.g. <code>2023-11-08 18:43:44.204+0200</code>)</td></tr><tr><th><code>utcDateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Creation date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>).<p>Blobs cannot be modified, so this timestamp specifies when the blob was created.</p></td></tr></tbody></table></figure>
<table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>blobId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The unique ID of the blob (e.g. <code>XXbfAJXqWrYnSXcelLFA</code>).<p>Important: this ID is actually a hash of the content, see <code>AbstractBeccaEntity#saveBlob</code>! It is a logic error to modify an existing blob.</p></td></tr><tr><th><code>content</code></th><td>Text</td><td>Nullable</td><td><code>null</code></td><td><p>The content of the blob, can be either:</p><ul><li>text (for plain text notes or HTML notes).</li><li>binary (for images and other types of attachments)</li></ul></td></tr><tr><th><code>dateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Creation date with timezone offset (e.g. <code>2023-11-08 18:43:44.204+0200</code>)</td></tr><tr><th><code>utcDateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Creation date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>).<p>Blobs cannot be modified, so this timestamp specifies when the blob was created.</p></td></tr></tbody></table>

View File

@ -1,2 +1,12 @@
# branches
<figure class="table"><table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>branchId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The ID of the branch, in the form of <code>a_b</code> where <code>a</code> is the <code>parentNoteId</code> and <code>b</code> is the <code>noteId</code>.</td></tr><tr><th><code>noteId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The ID of the <a href="notes.md">note</a>.</td></tr><tr><th><code>parentNoteId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The ID of the parent <a href="notes.md">note</a> the note belongs to.</td></tr><tr><th><code>notePosition</code></th><td>Integer</td><td>Non-null</td><td>&nbsp;</td><td>The position of the branch within the same level of hierarchy, the value is usually a multiple of 10.</td></tr><tr><th><code>prefix</code></th><td>Text</td><td>Nullable</td><td>&nbsp;</td><td>The <a href="../Branch%20prefixes.md">branch prefix</a> if any, or <code>NULL</code> otherwise.</td></tr><tr><th><code>isExpanded</code></th><td>Integer</td><td>Non-null</td><td>0</td><td>Whether the branch should appear expanded (its children shown) to the user.</td></tr><tr><th><code>isDeleted</code></th><td>Integer</td><td>Non-null</td><td>0</td><td><code>1</code> if the entity is <a href="../Deleted%20notes.md">deleted</a>, <code>0</code> otherwise.</td></tr><tr><th><code>deleteId</code></th><td>Text</td><td>Nullable</td><td><code>null</code></td><td>&nbsp;</td></tr><tr><th><code>utcDateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Modification date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr></tbody></table></figure>
| Column Name | Data Type | Nullity | Default value | Description |
| --- | --- | --- | --- | --- |
| `branchId` | Text | Non-null | | The ID of the branch, in the form of `a_b` where `a` is the `parentNoteId` and `b` is the `noteId`. |
| `noteId` | Text | Non-null | | The ID of the [note](notes.md). |
| `parentNoteId` | Text | Non-null | | The ID of the parent [note](notes.md) the note belongs to. |
| `notePosition` | Integer | Non-null | | The position of the branch within the same level of hierarchy, the value is usually a multiple of 10. |
| `prefix` | Text | Nullable | | The [branch prefix](../Branch%20prefixes.md) if any, or `NULL` otherwise. |
| `isExpanded` | Integer | Non-null | 0 | Whether the branch should appear expanded (its children shown) to the user. |
| `isDeleted` | Integer | Non-null | 0 | `1` if the entity is [deleted](../Deleted%20notes.md), `0` otherwise. |
| `deleteId` | Text | Nullable | `null` | |
| `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |

View File

@ -1,4 +1,15 @@
# entity_changes
<figure class="table"><table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>id</code></th><td>Integer</td><td>Non-null</td><td>&nbsp;</td><td>A sequential numeric index of the entity change.</td></tr><tr><th><code>entityName</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The type of entity being changed (<code>attributes</code>, <code>branches</code>, <code>note_reordering</code>, etc.)</td></tr><tr><th><code>entityId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The ID of the entity being changed.</td></tr><tr><th><code>hash</code></th><td>Text</td><td>Nullable (*)</td><td>&nbsp;</td><td>TODO: Describe how the hash is calculated</td></tr><tr><th><code>isErased</code></th><td>Integer (1 or 0)</td><td>Nullable (*)</td><td>&nbsp;</td><td>TODO: What does this do?</td></tr><tr><th><code>changeId</code></th><td>Text</td><td>Nullable (*)</td><td>&nbsp;</td><td>TODO: What does this do?</td></tr><tr><th><code>componentId</code></th><td>Text</td><td>Nullable (*)</td><td>&nbsp;</td><td><p>The ID of the UI component that caused this change.</p><p>Examples: <code>date-note</code>, <code>F-PoZMI0vc</code>, <code>NA</code> (catch all)</p></td></tr><tr><th><code>instanceId</code></th><td>Text</td><td>Nullable (*)</td><td>&nbsp;</td><td>The ID of the <a href="#root/pOsGYCXsbNQG/tC7s2alapj8V/Gzjqa934BdH4/c5xB8m4g2IY6">instance</a> that created this change.</td></tr><tr><th><code>isSynced</code></th><td>Integer (1 or 0)</td><td>Non-null</td><td>&nbsp;</td><td>TODO: What does this do?</td></tr><tr><th><code>utcDateChanged</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Date of the entity change in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr></tbody></table></figure>
| Column Name | Data Type | Nullity | Default value | Description |
| --- | --- | --- | --- | --- |
| `id` | Integer | Non-null | | A sequential numeric index of the entity change. |
| `entityName` | Text | Non-null | | The type of entity being changed (`attributes`, `branches`, `note_reordering`, etc.) |
| `entityId` | Text | Non-null | | The ID of the entity being changed. |
| `hash` | Text | Nullable (\*) | | TODO: Describe how the hash is calculated |
| `isErased` | Integer (1 or 0) | Nullable (\*) | | TODO: What does this do? |
| `changeId` | Text | Nullable (\*) | | TODO: What does this do? |
| `componentId` | Text | Nullable (\*) | | The ID of the UI component that caused this change.<br><br>Examples: `date-note`, `F-PoZMI0vc`, `NA` (catch all) |
| `instanceId` | Text | Nullable (\*) | | The ID of the [instance](#root/pOsGYCXsbNQG/tC7s2alapj8V/Gzjqa934BdH4/c5xB8m4g2IY6) that created this change. |
| `isSynced` | Integer (1 or 0) | Non-null | | TODO: What does this do? |
| `utcDateChanged` | Text | Non-null | | Date of the entity change in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |
Nullable (\*) means all new values are non-null, old rows may contain null values.

View File

@ -1,2 +1,9 @@
# etapi_tokens
<figure class="table"><table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>etapiTokenId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>A unique ID of the token (e.g. <code>aHmLr5BywvfJ</code>).</td></tr><tr><th><code>name</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The name of the token, as is set by the user.</td></tr><tr><th><code>tokenHash</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The token itself.</td></tr><tr><th><code>utcDateCreated</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Creation date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr><tr><th><code>utcDateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Modification date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr><tr><th><code>isDeleted</code></th><td>Integer</td><td>Non-null</td><td>0</td><td><code>1</code> if the entity is <a href="../Deleted%20notes.md">deleted</a>, <code>0</code> otherwise.</td></tr></tbody></table></figure>
| Column Name | Data Type | Nullity | Default value | Description |
| --- | --- | --- | --- | --- |
| `etapiTokenId` | Text | Non-null | | A unique ID of the token (e.g. `aHmLr5BywvfJ`). |
| `name` | Text | Non-null | | The name of the token, as is set by the user. |
| `tokenHash` | Text | Non-null | | The token itself. |
| `utcDateCreated` | Text | Non-null | | Creation date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |
| `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |
| `isDeleted` | Integer | Non-null | 0 | `1` if the entity is [deleted](../Deleted%20notes.md), `0` otherwise. |

View File

@ -1,2 +1,15 @@
# notes
<figure class="table"><table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>noteId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The unique ID of the note (e.g. <code>2LJrKqIhr0Pe</code>).</td></tr><tr><th><code>title</code></th><td>Text</td><td>Non-null</td><td><code>"note"</code></td><td>The title of the note, as defined by the user.</td></tr><tr><th><code>isProtected</code></th><td>Integer</td><td>Non-null</td><td>0</td><td><code>1</code> if the entity is <a href="../Protected%20entities.md">protected</a>, <code>0</code> otherwise.</td></tr><tr><th><code>type</code></th><td>Text</td><td>Non-null</td><td><code>"text"</code></td><td>The type of note (i.e. <code>text</code>, <code>file</code>, <code>code</code>, <code>relationMap</code>, <code>mermaid</code>, <code>canvas</code>).</td></tr><tr><th><code>mime</code></th><td>Text</td><td>Non-null</td><td><code>"text/html"</code></td><td>The MIME type of the note (e.g. <code>text/html</code>).. Note that it can be an empty string in some circumstances, but not null.</td></tr><tr><th><code>isDeleted</code></th><td>Integer</td><td>Nullable</td><td>0</td><td><code>1</code> if the entity is <a href="../Deleted%20notes.md">deleted</a>, <code>0</code> otherwise.</td></tr><tr><th><code>deleteId</code></th><td>Text</td><td>Non-null</td><td><code>null</code></td><td>&nbsp;</td></tr><tr><th><code>dateCreated</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Localized creation date (e.g. <code>2023-11-08 18:43:44.204+0200</code>)</td></tr><tr><th><code>dateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Localized modification date (e.g. <code>2023-11-08 18:43:44.204+0200</code>)</td></tr><tr><th><code>utcDateCreated</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Creation date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr><tr><th><code>utcDateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Modification date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr><tr><th><code>blobId</code></th><td>Text</td><td>Nullable</td><td><code>null</code></td><td>The corresponding ID from&nbsp;<a class="reference-link" href="blobs.md">blobs</a>. Although it can theoretically be <code>NULL</code>, haven't found any such note yet.</td></tr></tbody></table></figure>
| Column Name | Data Type | Nullity | Default value | Description |
| --- | --- | --- | --- | --- |
| `noteId` | Text | Non-null | | The unique ID of the note (e.g. `2LJrKqIhr0Pe`). |
| `title` | Text | Non-null | `"note"` | The title of the note, as defined by the user. |
| `isProtected` | Integer | Non-null | 0 | `1` if the entity is [protected](../Protected%20entities.md), `0` otherwise. |
| `type` | Text | Non-null | `"text"` | The type of note (i.e. `text`, `file`, `code`, `relationMap`, `mermaid`, `canvas`). |
| `mime` | Text | Non-null | `"text/html"` | The MIME type of the note (e.g. `text/html`).. Note that it can be an empty string in some circumstances, but not null. |
| `isDeleted` | Integer | Nullable | 0 | `1` if the entity is [deleted](../Deleted%20notes.md), `0` otherwise. |
| `deleteId` | Text | Non-null | `null` | |
| `dateCreated` | Text | Non-null | | Localized creation date (e.g. `2023-11-08 18:43:44.204+0200`) |
| `dateModified` | Text | Non-null | | Localized modification date (e.g. `2023-11-08 18:43:44.204+0200`) |
| `utcDateCreated` | Text | Non-null | | Creation date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |
| `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |
| `blobId` | Text | Nullable | `null` | The corresponding ID from <a class="reference-link" href="blobs.md">blobs</a>. Although it can theoretically be `NULL`, haven't found any such note yet. |

View File

@ -1,2 +1,7 @@
# options
<figure class="table"><table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>name</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The name of option (e.g. <code>maxContentWidth</code>)</td></tr><tr><th><code>value</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The value of the option.</td></tr><tr><th><code>isSynced</code></th><td>Integer</td><td>Non-null</td><td>0</td><td><code>0</code> if the option is not synchronized and thus can differ between clients, <code>1</code> if the option is synchronized.</td></tr><tr><th><code>utcDateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Modification date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr></tbody></table></figure>
| Column Name | Data Type | Nullity | Default value | Description |
| --- | --- | --- | --- | --- |
| `name` | Text | Non-null | | The name of option (e.g. `maxContentWidth`) |
| `value` | Text | Non-null | | The value of the option. |
| `isSynced` | Integer | Non-null | 0 | `0` if the option is not synchronized and thus can differ between clients, `1` if the option is synchronized. |
| `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |

View File

@ -1,2 +1,6 @@
# recent_notes
<figure class="table"><table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>noteId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Unique ID of the note (e.g. <code>yRRTLlqTbGoZ</code>).</td></tr><tr><th><code>notePath</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The path (IDs) to the <a href="notes.md">note</a> from root to the note itself, separated by slashes.</td></tr><tr><th><code>utcDateCreated</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Creation date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr></tbody></table></figure>
| Column Name | Data Type | Nullity | Default value | Description |
| --- | --- | --- | --- | --- |
| `noteId` | Text | Non-null | | Unique ID of the note (e.g. `yRRTLlqTbGoZ`). |
| `notePath` | Text | Non-null | | The path (IDs) to the [note](notes.md) from root to the note itself, separated by slashes. |
| `utcDateCreated` | Text | Non-null | | Creation date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |

View File

@ -1,2 +1,15 @@
# revisions
<figure class="table"><table><thead><tr><th>Column Name</th><th>Data Type</th><th>Nullity</th><th>Default value</th><th>Description</th></tr></thead><tbody><tr><th><code>revisionId</code></th><td>TextText</td><td>Non-null</td><td>&nbsp;</td><td>Unique ID of the revision (e.g. <code>0GjgUqnEudI8</code>).</td></tr><tr><th><code>noteId</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>ID of the <a href="notes.md">note</a> this revision belongs to.</td></tr><tr><th><code>type</code></th><td>Text</td><td>Non-null</td><td><code>""</code></td><td>The type of note (i.e. <code>text</code>, <code>file</code>, <code>code</code>, <code>relationMap</code>, <code>mermaid</code>, <code>canvas</code>).</td></tr><tr><th><code>mime</code></th><td>Text</td><td>Non-null</td><td><code>""</code></td><td>The MIME type of the note (e.g. <code>text/html</code>).</td></tr><tr><th><code>title</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>The title of the note, as defined by the user.</td></tr><tr><th><code>isProtected</code></th><td>Integer</td><td>Non-null</td><td>0</td><td><code>1</code> if the entity is <a href="../Protected%20entities.md">protected</a>, <code>0</code> otherwise.</td></tr><tr><th><code>blobId</code></th><td>Text</td><td>Nullable</td><td><code>null</code></td><td>The corresponding ID from&nbsp;<a class="reference-link" href="blobs.md">blobs</a>. Although it can theoretically be <code>NULL</code>, haven't found any such note yet.</td></tr><tr><th><code>utcDateLastEdited</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td><strong>Not sure how it differs from modification date.</strong></td></tr><tr><th><code>utcDateCreated</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Creation date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr><tr><th><code>utcDateModified</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Modification date in UTC format (e.g. <code>2023-11-08 16:43:44.204Z</code>)</td></tr><tr><th><code>dateLastEdited</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td><strong>Not sure how it differs from modification date.</strong></td></tr><tr><th><code>dateCreated</code></th><td>Text</td><td>Non-null</td><td>&nbsp;</td><td>Localized creatino date (e.g. <code>2023-08-12 15:10:04.045+0300</code>)</td></tr></tbody></table></figure>
| Column Name | Data Type | Nullity | Default value | Description |
| --- | --- | --- | --- | --- |
| `revisionId` | TextText | Non-null | | Unique ID of the revision (e.g. `0GjgUqnEudI8`). |
| `noteId` | Text | Non-null | | ID of the [note](notes.md) this revision belongs to. |
| `type` | Text | Non-null | `""` | The type of note (i.e. `text`, `file`, `code`, `relationMap`, `mermaid`, `canvas`). |
| `mime` | Text | Non-null | `""` | The MIME type of the note (e.g. `text/html`). |
| `title` | Text | Non-null | | The title of the note, as defined by the user. |
| `isProtected` | Integer | Non-null | 0 | `1` if the entity is [protected](../Protected%20entities.md), `0` otherwise. |
| `blobId` | Text | Nullable | `null` | The corresponding ID from <a class="reference-link" href="blobs.md">blobs</a>. Although it can theoretically be `NULL`, haven't found any such note yet. |
| `utcDateLastEdited` | Text | Non-null | | **Not sure how it differs from modification date.** |
| `utcDateCreated` | Text | Non-null | | Creation date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |
| `utcDateModified` | Text | Non-null | | Modification date in UTC format (e.g. `2023-11-08 16:43:44.204Z`) |
| `dateLastEdited` | Text | Non-null | | **Not sure how it differs from modification date.** |
| `dateCreated` | Text | Non-null | | Localized creatino date (e.g. `2023-08-12 15:10:04.045+0300`) |

View File

@ -13,11 +13,15 @@ All the icons are now built off of the SVGs in the `images` directory using the
These are stored in `images`:
<figure class="table"><table><thead><tr><th>Name</th><th>Resolution</th><th>Description</th></tr></thead><tbody><tr><td><code>icon-black.svg</code></td><td>53x40</td><td>Used by the global menu button when not hovered.</td></tr><tr><td><code>icon-color.svg</code></td><td>53x40</td><td>Used by the global menu when hovered.</td></tr><tr><td><code>icon-grey.svg</code></td><td>53x40</td><td>Used by the dark theme, in place of <code>icon-black.svg</code>.</td></tr></tbody></table></figure>
| Name | Resolution | Description |
| --- | --- | --- |
| `icon-black.svg` | 53x40 | Used by the global menu button when not hovered. |
| `icon-color.svg` | 53x40 | Used by the global menu when hovered. |
| `icon-grey.svg` | 53x40 | Used by the dark theme, in place of `icon-black.svg`. |
## App icons
<figure class="table"><table><thead><tr><th>Name</th><th>Resolution</th><th>Description</th></tr></thead><tbody><tr><td><code>ios/apple-touch-icon.png</code></td><td>180x180</td><td>Used as <code>apple-touch-icon</code>, but only in <code>login.ejs</code> and <code>set_password.ejs</code> for some reason.</td></tr><tr><td><code>mac/icon.icns</code></td><td>512x512</td><td>Provided as <code>--icon</code> to <code>electron-packager</code> for <code>mac-arm64</code> and <code>mac-x64</code> <a href="../Old%20documentation/Build%20deliveries%20locally.md">builds</a>.</td></tr><tr><td><code>png/128x128.png</code></td><td>128x128</td><td>Used in <code>linux-x64</code> <a href="../Old%20documentation/Build%20deliveries%20locally.md">build</a>, to provide an <code>icon.png</code>.</td></tr><tr><td><code>png/256x256-dev.png</code></td><td>256x256</td><td>Used by the Electron window icon, if in dev mode.</td></tr><tr><td><code>png/256x256.png</code></td><td>Used by the Electron window icon, if not in dev mode.</td></tr><tr><td><code>win/icon.ico</code></td><td><ul><li>ICO 16x16</li><li>ICO 32x32</li><li>ICO 48x48</li><li>ICO 64x64</li><li>ICO 128x128</li><li>PNG 256x256</li></ul></td><td><ul><li>Used by the <code>win-x64</code> <a href="../Old%20documentation/Build%20deliveries%20locally.md">build</a>.</li><li>Used by Squirrel Windows installer for: setup icon, app icon, control panel icon</li><li>Used as the favicon.</li></ul></td></tr><tr><td><code>win/setup-banner.gif</code></td><td>640x480</td><td>Used by the Squirrel Windows installer during the installation process. Has only one frame.</td></tr></tbody></table></figure>
<table><thead><tr><th>Name</th><th>Resolution</th><th>Description</th></tr></thead><tbody><tr><td><code>ios/apple-touch-icon.png</code></td><td>180x180</td><td>Used as <code>apple-touch-icon</code>, but only in <code>login.ejs</code> and <code>set_password.ejs</code> for some reason.</td></tr><tr><td><code>mac/icon.icns</code></td><td>512x512</td><td>Provided as <code>--icon</code> to <code>electron-packager</code> for <code>mac-arm64</code> and <code>mac-x64</code> <a href="../Old%20documentation/Build%20deliveries%20locally.md">builds</a>.</td></tr><tr><td><code>png/128x128.png</code></td><td>128x128</td><td>Used in <code>linux-x64</code> <a href="../Old%20documentation/Build%20deliveries%20locally.md">build</a>, to provide an <code>icon.png</code>.</td></tr><tr><td><code>png/256x256-dev.png</code></td><td>256x256</td><td>Used by the Electron window icon, if in dev mode.</td></tr><tr><td><code>png/256x256.png</code></td><td>Used by the Electron window icon, if not in dev mode.</td></tr><tr><td><code>win/icon.ico</code></td><td><ul><li>ICO 16x16</li><li>ICO 32x32</li><li>ICO 48x48</li><li>ICO 64x64</li><li>ICO 128x128</li><li>PNG 256x256</li></ul></td><td><ul><li>Used by the <code>win-x64</code> <a href="../Old%20documentation/Build%20deliveries%20locally.md">build</a>.</li><li>Used by Squirrel Windows installer for: setup icon, app icon, control panel icon</li><li>Used as the favicon.</li></ul></td></tr><tr><td><code>win/setup-banner.gif</code></td><td>640x480</td><td>Used by the Squirrel Windows installer during the installation process. Has only one frame.</td></tr></tbody></table>
## Additional locations where the branding is used

View File

@ -1,6 +1,15 @@
# Adaptive icon
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col> <col></colgroup><tbody><tr><th>Before</th><td><figure class="image"><img src="1_Adaptive icon_image.png"></figure></td></tr><tr><th>After</th><td><figure class="image"><img src="6_Adaptive icon_image.png"></figure></td></tr><tr><th>With new scale</th><td><figure class="image"><img src="4_Adaptive icon_image.png"></figure></td></tr></tbody></table></figure>
| | |
| --- | --- |
| Before | <figure class="image"><img src="1_Adaptive icon_image.png"></figure> |
| After | <figure class="image"><img src="6_Adaptive icon_image.png"></figure> |
| With new scale | <figure class="image"><img src="4_Adaptive icon_image.png"></figure> |
## Scale
<figure class="table" style="width:300px;"><table><tbody><tr><th>0.9</th><td style="background-color:hsl(0, 0%, 90%)"><figure class="image"><img src="2_Adaptive icon_image.png"></figure></td></tr><tr><th>0.85</th><td style="background-color:hsl(0, 0%, 90%);"><figure class="image"><img src="5_Adaptive icon_image.png"></figure></td></tr><tr><th>0.8</th><td style="background-color:hsl(0, 0%, 90%);"><figure class="image"><img src="Adaptive icon_image.png"></figure></td></tr><tr><th>0.75</th><td style="background-color:hsl(0, 0%, 90%);"><figure class="image"><img src="3_Adaptive icon_image.png"></figure></td></tr></tbody></table></figure>
| | |
| --- | --- |
| 0.9 | <figure class="image"><img src="2_Adaptive icon_image.png"></figure> |
| 0.85 | <figure class="image"><img src="5_Adaptive icon_image.png"></figure> |
| 0.8 | <figure class="image"><img src="Adaptive icon_image.png"></figure> |
| 0.75 | <figure class="image"><img src="3_Adaptive icon_image.png"></figure> |

View File

@ -27,7 +27,7 @@ Even with a 1024x1024 icon, the image is still blurry.
Comparing the `.icns` file from the Electron build reveals that the `.icns` file has been tampered with:
<figure class="table"><table><thead><tr><th>The <code>electron.icns</code> from the resulting build</th><th>The icon source</th></tr></thead><tbody><tr><td><pre><code class="language-text-plain">File: images/app-icons/mac/electron.icns
<table><thead><tr><th>The <code>electron.icns</code> from the resulting build</th><th>The icon source</th></tr></thead><tbody><tr><td><pre><code class="language-text-plain">File: images/app-icons/mac/electron.icns
icp4: 1140 bytes, png: 16x16
icp5: 1868 bytes, png: 32x32
ic07: 9520 bytes, png: 128x128
@ -37,7 +37,7 @@ Comparing the `.icns` file from the Electron build reveals that the `.icns` file
icp5: 4364 bytes, png: 32x32
ic07: 26273 bytes, png: 128x128
ic09: 206192 bytes, png: 512x512
ic10: 716034 bytes, png: 512x512@2x</code></pre></td></tr></tbody></table></figure>
ic10: 716034 bytes, png: 512x512@2x</code></pre></td></tr></tbody></table>
The bluriness might come from the image itself: [https://stackoverflow.com/questions/54030521/convert-svg-to-png-with-sharp-edges](https://stackoverflow.com/questions/54030521/convert-svg-to-png-with-sharp-edges) 

View File

@ -5,8 +5,23 @@ The following icons were removed:
These are stored in `images`:
<figure class="table"><table><thead><tr><th>Name</th><th>Resolution</th><th>Description</th></tr></thead><tbody><tr><td><code>icon-black.png</code></td><td>36x36</td><td>Does not appear to be used.</td></tr><tr><td><code>icon-color.png</code></td><td>36x36</td><td>Used only by some tests in <code>test-etapi</code>.</td></tr><tr><td><code>icon-grey.png</code></td><td>36x36</td><td>Does not appear to be used.</td></tr><tr><td><code>icon.svg</code></td><td>210x297</td><td>Does not appear to be used.</td></tr></tbody></table></figure>
| Name | Resolution | Description |
| --- | --- | --- |
| `icon-black.png` | 36x36 | Does not appear to be used. |
| `icon-color.png` | 36x36 | Used only by some tests in `test-etapi`. |
| `icon-grey.png` | 36x36 | Does not appear to be used. |
| `icon.svg` | 210x297 | Does not appear to be used. |
## App icons
<figure class="table"><table><thead><tr><th>Name</th><th>Resolution</th><th>Description</th></tr></thead><tbody><tr><td><code>png/16x16-bw.png</code></td><td>16x16</td><td>Do not appear to be used.</td></tr><tr><td><code>png/16x16.png</code></td></tr><tr><td><code>png/24x24.png</code></td><td>24x24</td></tr><tr><td><code>png/32x32.png</code></td><td>32x32</td></tr><tr><td><code>png/48x48.png</code></td><td>48x48</td></tr><tr><td><code>png/64x64.png</code></td><td>64x64</td></tr><tr><td><code>png/96x96.png</code></td><td>96x96</td></tr><tr><td><code>png/512x512.png</code></td><td>512x512</td><td>Does not appear to be used.</td></tr><tr><td><code>win/setup-banner.xcf</code></td><td>&nbsp;</td><td>GIMP source for <code>win/setup-banner.gif</code>. Provided only for future editing.</td></tr></tbody></table></figure>
| Name | Resolution | Description |
| --- | --- | --- |
| `png/16x16-bw.png` | 16x16 | Do not appear to be used. |
| `png/16x16.png` |
| `png/24x24.png` | 24x24 |
| `png/32x32.png` | 32x32 |
| `png/48x48.png` | 48x48 |
| `png/64x64.png` | 64x64 |
| `png/96x96.png` | 96x96 |
| `png/512x512.png` | 512x512 | Does not appear to be used. |
| `win/setup-banner.xcf` | | GIMP source for `win/setup-banner.gif`. Provided only for future editing. |

View File

@ -3,7 +3,7 @@ The note type is defined by the `type` column in <a class="reference-link" href
Possible types:
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Note Type</th><th><code>type</code> value</th><th>Corresponding MIME type</th><th>Content of the note's blob</th><th>Relevant attributes</th></tr></thead><tbody><tr><th>Text</th><td><code>text</code></td><td>&nbsp;</td><td>The HTML of the note.</td><td>&nbsp;</td></tr><tr><th><a href="https://github.com/zadam/trilium/wiki/Relation-map">Relation Map&nbsp;</a></th><td><code>relationMap</code></td><td><code>application/json</code></td><td><p>A JSON describing the note:</p><pre><code class="language-text-plain">{
<table class="ck-table-resized"><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Note Type</th><th><code>type</code> value</th><th>Corresponding MIME type</th><th>Content of the note's blob</th><th>Relevant attributes</th></tr></thead><tbody><tr><th>Text</th><td><code>text</code></td><td>&nbsp;</td><td>The HTML of the note.</td><td>&nbsp;</td></tr><tr><th><a href="https://github.com/zadam/trilium/wiki/Relation-map">Relation Map&nbsp;</a></th><td><code>relationMap</code></td><td><code>application/json</code></td><td><p>A JSON describing the note:</p><pre><code class="language-text-plain">{
"notes": [
{
"noteId": "gFQDL11KEm9G",
@ -27,4 +27,4 @@ Possible types:
"files": {},
"type": "excalidraw",
"version": 2
}</code></pre></td><td>None</td></tr><tr><th>Mermaid Diagram</th><td><code>mermaid</code></td><td><code>text/mermaid</code> or <code>text/plain</code></td><td>The plain text content of the Mermaid diagram.</td><td>None</td></tr><tr><th>Book</th><td><code>book</code></td><td><code>text/html</code> or blank.</td><td>An empty blob.</td><td><ul><li><code>#viewType</code> which can be either <code>grid</code> or <code>list</code>.</li><li><code>#expanded</code></li></ul><p>both options are shown to the user via the “Book Properties” ribbon widget.</p></td></tr><tr><th>Web View</th><td><code>webView</code></td><td>blank</td><td>An empty blob.</td><td><code>#webViewSrc</code> pointing to an URL to render.</td></tr><tr><th>Code</th><td><code>code</code></td><td>Depends on the language (e.g. <code>text/plain</code>, <code>text/x-markdown</code>, <code>text/x-c++src</code>).</td><td>The plain text content.</td><td>&nbsp;</td></tr></tbody></table></figure>
}</code></pre></td><td>None</td></tr><tr><th>Mermaid Diagram</th><td><code>mermaid</code></td><td><code>text/mermaid</code> or <code>text/plain</code></td><td>The plain text content of the Mermaid diagram.</td><td>None</td></tr><tr><th>Book</th><td><code>book</code></td><td><code>text/html</code> or blank.</td><td>An empty blob.</td><td><ul><li><code>#viewType</code> which can be either <code>grid</code> or <code>list</code>.</li><li><code>#expanded</code></li></ul><p>both options are shown to the user via the “Book Properties” ribbon widget.</p></td></tr><tr><th>Web View</th><td><code>webView</code></td><td>blank</td><td>An empty blob.</td><td><code>#webViewSrc</code> pointing to an URL to render.</td></tr><tr><th>Code</th><td><code>code</code></td><td>Depends on the language (e.g. <code>text/plain</code>, <code>text/x-markdown</code>, <code>text/x-c++src</code>).</td><td>The plain text content.</td><td>&nbsp;</td></tr></tbody></table>

View File

@ -1,7 +1,13 @@
# Build deliveries locally
In the project root:
<figure class="table"><table><thead><tr><th>Platform</th><th>Architecture</th><th>Application</th><th>Build command</th></tr></thead><tbody><tr><th>macOS</th><td>x86_64</td><td>Desktop / Electron app</td><td><code>./bin/build-mac-x64.sh</code></td></tr><tr><td>ARM 64</td><td>Desktop / Electron app</td><td><code>./bin/build-mac-arm64.sh</code></td></tr><tr><th>Linux</th><td>x86_64</td><td>Desktop / Electron app</td><td><code>./bin/build-linux-x64.sh</code></td></tr><tr><td>Server</td><td><code>./bin/build-server.sh</code></td></tr><tr><th>Windows</th><td>x86_64</td><td>Desktop / Electron app</td><td><code>./bin/build-win-x64.sh</code></td></tr></tbody></table></figure>
| Platform | Architecture | Application | Build command |
| --- | --- | --- | --- |
| macOS | x86\_64 | Desktop / Electron app | `./bin/build-mac-x64.sh` |
| ARM 64 | Desktop / Electron app | `./bin/build-mac-arm64.sh` |
| Linux | x86\_64 | Desktop / Electron app | `./bin/build-linux-x64.sh` |
| Server | `./bin/build-server.sh` |
| Windows | x86\_64 | Desktop / Electron app | `./bin/build-win-x64.sh` |
Under NixOS the following `nix-shell` is needed:
@ -19,8 +25,8 @@ The resulting build will be in the `dist` directory under the project root.
### Testing the Linux builds under NixOS
<figure class="table"><table><thead><tr><th>Desktop client</th><th>Server</th></tr></thead><tbody><tr><td><pre><code class="language-text-plain">$ NIXPKGS_ALLOW_UNFREE=1 nix-shell -p steam-run
<table><thead><tr><th>Desktop client</th><th>Server</th></tr></thead><tbody><tr><td><pre><code class="language-text-plain">$ NIXPKGS_ALLOW_UNFREE=1 nix-shell -p steam-run
[nix-shell] cd dist/trilium-linux-x64
[nix-shell] steam-run ./trilium</code></pre></td><td><pre><code class="language-text-plain">$ NIXPKGS_ALLOW_UNFREE=1 nix-shell -p steam-run
[nix-shell] cd dist/trilium-linux-x64-server
[nix-shell] steam-run ./trilium.sh</code></pre></td></tr></tbody></table></figure>
[nix-shell] steam-run ./trilium.sh</code></pre></td></tr></tbody></table>

View File

@ -1,2 +1,2 @@
# Updating dependencies
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Dependency</th><th>Name in <code>library_loader</code></th><th>Things to check for a basic sanity check</th><th>&nbsp;</th><th>Protected by unit tests</th></tr></thead><tbody><tr><td><code>better-sqlite3</code></td><td>&nbsp;</td><td>See&nbsp;<a class="reference-link" href="Updating%20dependencies/bettersqlite%20binaries.md">bettersqlite binaries</a>.</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>jsdom</code></td><td>&nbsp;</td><td><ul><li>Note map</li><li>Clipper</li><li>Note similarity</li></ul></td><td>Protected by typings, should catch any potential changes in API.</td><td>Yes</td></tr><tr><td><code>async-mutex</code></td><td>&nbsp;</td><td><ul><li>Sync</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>axios</code></td><td>&nbsp;</td><td><ul><li>Can't be directly tested, as it's exposed only via the backend script API.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>sax</code></td><td>&nbsp;</td><td><ul><li>EverNote imports</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><ul><li><code>ws</code></li><li><code>debounce</code></li></ul></td><td>&nbsp;</td><td><ul><li>Check any action is reported from server to client (e.g. delete a note).</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>ejs</code></td><td>&nbsp;</td><td><ul><li>Onboarding / first setup</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>dayjs</code></td><td>&nbsp;</td><td><ul><li>Day notes</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>semver</code></td><td>&nbsp;</td><td><ul><li>Application should start.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>https-proxy-agent</code></td><td>&nbsp;</td><td>???</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>sax</code></td><td>&nbsp;</td><td><ul><li>EverNote import</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>ini</code></td><td>&nbsp;</td><td><ul><li>Affects config, generally if the application starts then it should be OK.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>jsplumb</code></td><td><code>RELATION_MAP</code></td><td><ul><li>Relation map note type</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>jquery.mark.es6</code></td><td><code>MARKJS</code></td><td><ul><li>In search, when highlighting the text that matched.</li><li>In search in HTML, which might not actually be used since it seems to have been replaced by CKEditor's own find &amp; replace dialog.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>knockout.js</code></td><td>&nbsp;</td><td><ul><li>Used in rendering the login and main layout of the application.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>normalize.min.css</code></td><td>&nbsp;</td><td><ul><li>Used in shared notes.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>wheel-zoom.min.js</code></td><td><code>WHEEL_ZOOM</code></td><td><ul><li>When opening a image that is in attachment.</li><li>When opening a stand-alone image note.</li><li>When zooming in a mermaid chart.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>fancytree</code></td><td>&nbsp;</td><td><ul><li>The note tree should be fully functional.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>bootstrap</code></td><td>&nbsp;</td><td><ul><li>Check mostly the on-boarding pages, when there is no database.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>electron-debug</code></td><td>&nbsp;</td><td><ul><li>Run electron using <code>npm run start-electron</code> and check that the debug hotkeys are still working (Ctrl+Shift+I on Windows/Linux, Cmd+Alt+I for dev tools, Cmd/Ctrl+R for reload).</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>electron-dl</code></td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>eslint</code></td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>marked</code></td><td>&nbsp;</td><td><ul><li>Importing a markdown note.</li></ul></td><td>&nbsp;</td><td>Yes</td></tr><tr><td><code>force-graph</code></td><td>&nbsp;</td><td><ul><li>Note map</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr></tbody></table></figure>
<table class="ck-table-resized"><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Dependency</th><th>Name in <code>library_loader</code></th><th>Things to check for a basic sanity check</th><th>&nbsp;</th><th>Protected by unit tests</th></tr></thead><tbody><tr><td><code>better-sqlite3</code></td><td>&nbsp;</td><td>See&nbsp;<a class="reference-link" href="Updating%20dependencies/bettersqlite%20binaries.md">bettersqlite binaries</a>.</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>jsdom</code></td><td>&nbsp;</td><td><ul><li>Note map</li><li>Clipper</li><li>Note similarity</li></ul></td><td>Protected by typings, should catch any potential changes in API.</td><td>Yes</td></tr><tr><td><code>async-mutex</code></td><td>&nbsp;</td><td><ul><li>Sync</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>axios</code></td><td>&nbsp;</td><td><ul><li>Can't be directly tested, as it's exposed only via the backend script API.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>sax</code></td><td>&nbsp;</td><td><ul><li>EverNote imports</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><ul><li><code>ws</code></li><li><code>debounce</code></li></ul></td><td>&nbsp;</td><td><ul><li>Check any action is reported from server to client (e.g. delete a note).</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>ejs</code></td><td>&nbsp;</td><td><ul><li>Onboarding / first setup</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>dayjs</code></td><td>&nbsp;</td><td><ul><li>Day notes</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>semver</code></td><td>&nbsp;</td><td><ul><li>Application should start.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>https-proxy-agent</code></td><td>&nbsp;</td><td>???</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>sax</code></td><td>&nbsp;</td><td><ul><li>EverNote import</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>ini</code></td><td>&nbsp;</td><td><ul><li>Affects config, generally if the application starts then it should be OK.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>jsplumb</code></td><td><code>RELATION_MAP</code></td><td><ul><li>Relation map note type</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>jquery.mark.es6</code></td><td><code>MARKJS</code></td><td><ul><li>In search, when highlighting the text that matched.</li><li>In search in HTML, which might not actually be used since it seems to have been replaced by CKEditor's own find &amp; replace dialog.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>knockout.js</code></td><td>&nbsp;</td><td><ul><li>Used in rendering the login and main layout of the application.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>normalize.min.css</code></td><td>&nbsp;</td><td><ul><li>Used in shared notes.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>wheel-zoom.min.js</code></td><td><code>WHEEL_ZOOM</code></td><td><ul><li>When opening a image that is in attachment.</li><li>When opening a stand-alone image note.</li><li>When zooming in a mermaid chart.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>fancytree</code></td><td>&nbsp;</td><td><ul><li>The note tree should be fully functional.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>bootstrap</code></td><td>&nbsp;</td><td><ul><li>Check mostly the on-boarding pages, when there is no database.</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>electron-debug</code></td><td>&nbsp;</td><td><ul><li>Run electron using <code>npm run start-electron</code> and check that the debug hotkeys are still working (Ctrl+Shift+I on Windows/Linux, Cmd+Alt+I for dev tools, Cmd/Ctrl+R for reload).</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>electron-dl</code></td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>eslint</code></td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td><code>marked</code></td><td>&nbsp;</td><td><ul><li>Importing a markdown note.</li></ul></td><td>&nbsp;</td><td>Yes</td></tr><tr><td><code>force-graph</code></td><td>&nbsp;</td><td><ul><li>Note map</li></ul></td><td>&nbsp;</td><td>&nbsp;</td></tr></tbody></table>

View File

@ -5,4 +5,32 @@
Trilium Next started with version [8.4.0](https://github.com/WiseLibs/better-sqlite3/releases/tag/v8.4.0) for `better-sqlite3`
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col> <col> <col> <col></colgroup><tbody><tr><td><code>better-sqlite3</code> version</td><td>SQLite version</td><td>Node.js prebuilds</td><td>Electron.js prebuilds</td></tr><tr><td>8.4.0</td><td>&lt;3.43.0</td><td>v20</td><td>???</td></tr><tr><td>8.5.0</td><td>v20</td><td>v25</td></tr><tr><td>8.5.1</td><td>&nbsp;</td><td>v26</td></tr><tr><td>8.5.2</td><td>v20 (macOS + arm64)</td></tr><tr><td>8.6.0</td><td>3.43.0</td><td>&nbsp;</td></tr><tr><td>8.7.0</td><td>3.43.1</td><td>&nbsp;</td></tr><tr><td>9.0.0</td><td>3.43.2</td><td>&nbsp;</td><td>v27</td></tr><tr><td>9.1.0</td><td>3.44.0</td><td>&nbsp;</td></tr><tr><td>9.1.1</td><td>macOS + Alpine</td></tr><tr><td>9.2.0</td><td>3.44.2</td><td>&nbsp;</td></tr><tr><td>9.2.1 / 9.2.2</td><td>&nbsp;</td><td>v28</td></tr><tr><td>9.3.0</td><td>3.45.0</td><td>&nbsp;</td></tr><tr><td>9.4.0</td><td>3.45.1</td><td>&nbsp;</td></tr><tr><td>9.4.1</td><td>Windows arm, arm64</td></tr><tr><td>9.4.2</td><td>&nbsp;</td><td>&lt;v29</td></tr><tr><td>9.4.3</td><td>&nbsp;</td><td>&lt;v29</td></tr><tr><td>9.4.4</td><td>&nbsp;</td><td>v29</td></tr><tr><td>9.4.5</td><td>Better prebuilds</td></tr><tr><td>9.5.0</td><td>3.45.2</td><td>&nbsp;</td></tr><tr><td>9.6.0</td><td>3.45.3</td><td>&nbsp;</td><td>v30</td></tr><tr><td>10.0.0</td><td>v22</td></tr><tr><td>10.1.0</td><td>3.46.0</td><td>&nbsp;</td></tr><tr><td>11.0.0</td><td>&gt;21</td></tr><tr><td>11.1.0 (prerelease)</td><td>&nbsp;</td><td>&nbsp;</td><td>v31</td></tr><tr><td>11.1.1</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>11.1.2</td><td>&nbsp;</td><td>&nbsp;</td></tr></tbody></table></figure>
| | | | |
| --- | --- | --- | --- |
| `better-sqlite3` version | SQLite version | Node.js prebuilds | Electron.js prebuilds |
| 8.4.0 | <3.43.0 | v20 | ??? |
| 8.5.0 | v20 | v25 |
| 8.5.1 | | v26 |
| 8.5.2 | v20 (macOS + arm64) |
| 8.6.0 | 3.43.0 | |
| 8.7.0 | 3.43.1 | |
| 9.0.0 | 3.43.2 | | v27 |
| 9.1.0 | 3.44.0 | |
| 9.1.1 | macOS + Alpine |
| 9.2.0 | 3.44.2 | |
| 9.2.1 / 9.2.2 | | v28 |
| 9.3.0 | 3.45.0 | |
| 9.4.0 | 3.45.1 | |
| 9.4.1 | Windows arm, arm64 |
| 9.4.2 | | <v29 |
| 9.4.3 | | <v29 |
| 9.4.4 | | v29 |
| 9.4.5 | Better prebuilds |
| 9.5.0 | 3.45.2 | |
| 9.6.0 | 3.45.3 | | v30 |
| 10.0.0 | v22 |
| 10.1.0 | 3.46.0 | |
| 11.0.0 | \>21 |
| 11.1.0 (prerelease) | | | v31 |
| 11.1.1 | | |
| 11.1.2 | | |

View File

@ -1,2 +1,15 @@
# Testing compatibility
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col> <col> <col></colgroup><thead><tr><th><code>better-sqlite3</code> version<br><a href="https://github.com/WiseLibs/better-sqlite3/releases">Change log</a></th><th>SQLite version<br><a href="https://www.sqlite.org/changes.html">Change log</a></th><th>Compatibility with upstream Trilium</th></tr></thead><tbody><tr><td>8.4.0</td><td>&lt;3.43.0</td><td>Compatible, same version.</td></tr><tr><td>8.6.0</td><td>3.43.0</td><td>&nbsp;</td></tr><tr><td>8.7.0</td><td>3.43.1</td><td>&nbsp;</td></tr><tr><td>9.0.0</td><td>3.43.2</td><td>&nbsp;</td></tr><tr><td>9.1.0 + 9.1.1</td><td>3.44.0</td><td>&nbsp;</td></tr><tr><td>9.2.0 + 9.2.1 + 9.2.2</td><td>3.44.2</td><td>&nbsp;</td></tr><tr><td>9.3.0</td><td>3.45.0</td><td>&nbsp;</td></tr><tr><td>9.4.0, 9.4.1, 9.4.2, 9.4.3, 9.4.4, 9.4.5</td><td>3.45.1</td><td>&nbsp;</td></tr><tr><td>9.5.0</td><td>3.45.2</td><td>&nbsp;</td></tr><tr><td>9.6.0 / 10.0.0</td><td>3.45.3</td><td>&nbsp;</td></tr><tr><td>10.1.0 / 11.0.0 / 11.1.1 / 11.1.2 / 11.2.0 / 11.2.1</td><td>3.46.0</td><td>&nbsp;</td></tr><tr><td>11.3.0</td><td>3.46.1</td><td>&nbsp;</td></tr></tbody></table></figure>
| `better-sqlite3` version <br>[Change log](https://github.com/WiseLibs/better-sqlite3/releases) | SQLite version <br>[Change log](https://www.sqlite.org/changes.html) | Compatibility with upstream Trilium |
| --- | --- | --- |
| 8.4.0 | <3.43.0 | Compatible, same version. |
| 8.6.0 | 3.43.0 | |
| 8.7.0 | 3.43.1 | |
| 9.0.0 | 3.43.2 | |
| 9.1.0 + 9.1.1 | 3.44.0 | |
| 9.2.0 + 9.2.1 + 9.2.2 | 3.44.2 | |
| 9.3.0 | 3.45.0 | |
| 9.4.0, 9.4.1, 9.4.2, 9.4.3, 9.4.4, 9.4.5 | 3.45.1 | |
| 9.5.0 | 3.45.2 | |
| 9.6.0 / 10.0.0 | 3.45.3 | |
| 10.1.0 / 11.0.0 / 11.1.1 / 11.1.2 / 11.2.0 / 11.2.1 | 3.46.0 | |
| 11.3.0 | 3.46.1 | |

View File

@ -3,7 +3,10 @@
* Zadam left a TODO in `findandreplaceUI`: `// FIXME: keyboard shortcut doesn't work:` [`https://github.com/ckeditor/ckeditor5/issues/10645`](https://github.com/ckeditor/ckeditor5/issues/10645)
* `packages\ckeditor5-build-balloon-block\src\mention_customization.js` introduces note insertion via `@` character.
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col> <col> <col> <col></colgroup><thead><tr><th>Affected file</th><th>Affected method</th><th>Changed in</th><th>Reason for change</th></tr></thead><tbody><tr><td><code>packages/ckeditor5-mention/src/mentionui.ts</code></td><td><code>createRegExp()</code></td><td><code>6db05043be24bacf9bd51ea46408232b01a1b232</code> (added back)</td><td>Allows triggering the autocomplete for labels and attributes in the attribute editor.</td></tr><tr><td><code>init()</code></td><td><code>55a63a1934efb9a520fcc2d69f3ce55ac22aca39</code></td><td>Allows dismissing @-mention permanently after pressing ESC, otherwise it would automatically show up as soon as a space was entered.</td></tr></tbody></table></figure>
| Affected file | Affected method | Changed in | Reason for change |
| --- | --- | --- | --- |
| `packages/ckeditor5-mention/src/mentionui.ts` | `createRegExp()` | `6db05043be24bacf9bd51ea46408232b01a1b232` (added back) | Allows triggering the autocomplete for labels and attributes in the attribute editor. |
| `init()` | `55a63a1934efb9a520fcc2d69f3ce55ac22aca39` | Allows dismissing @-mention permanently after pressing ESC, otherwise it would automatically show up as soon as a space was entered. |
## Checking the old repo

View File

@ -1,4 +1,8 @@
# Versions and external plugins
## External plugins
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col> <col> <col></colgroup><tbody><tr><td>trilium-ckeditor5</td><td>43.2.0</td><td>&nbsp;</td></tr><tr><td><code>ckeditor5-math</code></td><td>&nbsp;</td><td>See&nbsp;<a class="reference-link" href="../ckeditor5-math.md">ckeditor5-math</a>.</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></tbody></table></figure>
| | | |
| --- | --- | --- |
| trilium-ckeditor5 | 43.2.0 | |
| `ckeditor5-math` | | See <a class="reference-link" href="../ckeditor5-math.md">ckeditor5-math</a>. |
| | | |

View File

@ -5,7 +5,7 @@ Using `vitest`, there are some unit and integration tests done for both the clie
These tests can be found by looking for the corresponding `.spec.ts` in the same directory as the source file.
<figure class="table"><table><tbody><tr><td><p>To run the server-side tests:</p><pre><code class="language-text-x-trilium-auto">npm run server:test</code></pre><p>To view the code coverage for the server:</p><pre><code class="language-text-x-trilium-auto">npm run server:coverage</code></pre><p>Afterwards, a friendly HTML report can be found in <code>/coverage/index.html</code>.</p></td><td><p>To run the client-side tests:</p><pre><code class="language-text-x-trilium-auto">npm run client:test</code></pre><p>To view the code coverage for the client:</p><pre><code class="language-text-x-trilium-auto">npm run client:coverage</code></pre><p>Afterwards, a friendly HTML report can be found in <code>/src/public/app/coverage/index.html</code>.</p></td></tr></tbody></table></figure>
<table><tbody><tr><td><p>To run the server-side tests:</p><pre><code class="language-text-x-trilium-auto">npm run server:test</code></pre><p>To view the code coverage for the server:</p><pre><code class="language-text-x-trilium-auto">npm run server:coverage</code></pre><p>Afterwards, a friendly HTML report can be found in <code>/coverage/index.html</code>.</p></td><td><p>To run the client-side tests:</p><pre><code class="language-text-x-trilium-auto">npm run client:test</code></pre><p>To view the code coverage for the client:</p><pre><code class="language-text-x-trilium-auto">npm run client:coverage</code></pre><p>Afterwards, a friendly HTML report can be found in <code>/src/public/app/coverage/index.html</code>.</p></td></tr></tbody></table>
To run both client and server-side tests:

View File

@ -1,6 +1,6 @@
{
"formatVersion": 2,
"appVersion": "0.97.0",
"appVersion": "0.97.1",
"files": [
{
"isClone": false,

View File

@ -21,11 +21,36 @@ The following regressions due to the conversion to TypeScript has been solved, c
### Client-side library updates
<figure class="table" style="width:50%;"><table><thead><tr><th>Library</th><th>Old version</th><th>New version</th></tr></thead><tbody><tr><th><code>axios</code></th><td>1.6.7</td><td>1.7.2</td></tr><tr><th><code>excalidraw</code></th><td>0.17.3</td><td>0.17.6</td></tr><tr><th><code>katex</code></th><td>0.16.9</td><td>0.16.11</td></tr><tr><th><code>mermaid</code></th><td>10.9.0</td><td>10.9.1</td></tr><tr><th><code>react</code>, <code>react-dom</code></th><td>18.2.0</td><td>18.3.1</td></tr></tbody></table></figure>
| Library | Old version | New version |
| --- | --- | --- |
| `axios` | 1.6.7 | 1.7.2 |
| `excalidraw` | 0.17.3 | 0.17.6 |
| `katex` | 0.16.9 | 0.16.11 |
| `mermaid` | 10.9.0 | 10.9.1 |
| `react`, `react-dom` | 18.2.0 | 18.3.1 |
### Server-side library updates
<figure class="table" style="width:50%;"><table><thead><tr><th>Library</th><th>Old version</th><th>New version</th></tr></thead><tbody><tr><th><code>sanitize-url</code></th><td>6.0.4</td><td>7.1.0</td></tr><tr><th><code>archiver</code></th><td>7.0.0</td><td>7.0.1</td></tr><tr><th><code>marked</code></th><td>12.0.0</td><td>13.0.2</td></tr><tr><th><code>sanitize-html</code></th><td>1.6.7</td><td>1.7.2</td></tr><tr><th><code>turndown</code></th><td>7.1.2</td><td>7.2.0</td></tr><tr><th><code>yauzl</code></th><td>3.1.2</td><td>3.1.3</td></tr><tr><th><code>express</code></th><td>4.18.3</td><td>4.19.2</td></tr><tr><th><code>express-rate-limit</code></th><td>7.2.0</td><td>7.3.1</td></tr><tr><th><code>jsdom</code></th><td>24.0.0</td><td>24.1.0</td></tr><tr><th><code>ws</code></th><td>8.16.0</td><td>8.18.0</td></tr><tr><th><code>ejs</code></th><td>3.1.9</td><td>3.1.10</td></tr><tr><th><code>dayjs</code></th><td>1.11.10</td><td>1.11.12</td></tr><tr><th><code>semver</code></th><td>7.6.0</td><td>7.6.3</td></tr><tr><th><code>async-mutex</code></th><td>0.4.1</td><td>0.5.0</td></tr><tr><th><code>https-proxy-agent</code></th><td>7.0.4</td><td>7.0.5</td></tr><tr><th><code>sax</code></th><td>1.3.0</td><td>1.4.1</td></tr><tr><th><code>ini</code></th><td>3.0.1</td><td>4.1.3</td></tr><tr><th><code>debounce</code></th><td>1.2.1</td><td>2.1.0</td></tr></tbody></table></figure>
| Library | Old version | New version |
| --- | --- | --- |
| `sanitize-url` | 6.0.4 | 7.1.0 |
| `archiver` | 7.0.0 | 7.0.1 |
| `marked` | 12.0.0 | 13.0.2 |
| `sanitize-html` | 1.6.7 | 1.7.2 |
| `turndown` | 7.1.2 | 7.2.0 |
| `yauzl` | 3.1.2 | 3.1.3 |
| `express` | 4.18.3 | 4.19.2 |
| `express-rate-limit` | 7.2.0 | 7.3.1 |
| `jsdom` | 24.0.0 | 24.1.0 |
| `ws` | 8.16.0 | 8.18.0 |
| `ejs` | 3.1.9 | 3.1.10 |
| `dayjs` | 1.11.10 | 1.11.12 |
| `semver` | 7.6.0 | 7.6.3 |
| `async-mutex` | 0.4.1 | 0.5.0 |
| `https-proxy-agent` | 7.0.4 | 7.0.5 |
| `sax` | 1.3.0 | 1.4.1 |
| `ini` | 3.0.1 | 4.1.3 |
| `debounce` | 1.2.1 | 2.1.0 |
## ✨ Technical improvements

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -41,4 +41,14 @@ These relations are supported and used internally by Trilium.
> [!TIP]
> Some relations presented here end with a `*`. That means that there are multiple relations with the same prefix, consult the specific page linked in the description of that relation for more information.
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col style="width:33.95%;"><col style="width:66.05%;"></colgroup><thead><tr><th>Label</th><th>Description</th></tr></thead><tbody><tr><td><code>runOn*</code></td><td>See&nbsp;<a class="reference-link" href="../../Scripting/Events.md">Events</a></td></tr><tr><td><code>template</code></td><td>note's attributes will be inherited even without a parent-child relationship, note's content and subtree will be added to instance notes if empty. See documentation for details.</td></tr><tr><td><code>inherit</code></td><td>note's attributes will be inherited even without a parent-child relationship. See&nbsp;<a class="reference-link" href="../Templates.md">Templates</a>&nbsp;for a similar concept. See&nbsp;<a class="reference-link" href="Attribute%20Inheritance.md">Attribute Inheritance</a>&nbsp;in the documentation.</td></tr><tr><td><code>renderNote</code></td><td>notes of type&nbsp;<a class="reference-link" href="../../Note%20Types/Render%20Note.md">Render Note</a>&nbsp;will be rendered using a code note (HTML or script) and it is necessary to point using this relation to which note should be rendered</td></tr><tr><td><code>widget_relation</code></td><td>target of this relation will be executed and rendered as a widget in the sidebar</td></tr><tr><td><code>shareCss</code></td><td>CSS note which will be injected into the share page. CSS note must be in the shared sub-tree as well. Consider using <code>share_hidden_from_tree</code> and <code>share_omit_default_css</code> as well.</td></tr><tr><td><code>shareJs</code></td><td>JavaScript note which will be injected into the share page. JS note must be in the shared sub-tree as well. Consider using <code>share_hidden_from_tree</code>.</td></tr><tr><td><code>shareTemplate</code></td><td>Embedded JavaScript note that will be used as the template for displaying the shared note. Falls back to the default template. Consider using <code>share_hidden_from_tree</code>.</td></tr><tr><td><code>shareFavicon</code></td><td>Favicon note to be set in the shared page. Typically you want to set it to share root and make it inheritable. Favicon note must be in the shared sub-tree as well. Consider using <code>share_hidden_from_tree</code>.</td></tr></tbody></table></figure>
| Label | Description |
| --- | --- |
| `runOn*` | See <a class="reference-link" href="../../Scripting/Events.md">Events</a> |
| `template` | note's attributes will be inherited even without a parent-child relationship, note's content and subtree will be added to instance notes if empty. See documentation for details. |
| `inherit` | note's attributes will be inherited even without a parent-child relationship. See <a class="reference-link" href="../Templates.md">Templates</a> for a similar concept. See <a class="reference-link" href="Attribute%20Inheritance.md">Attribute Inheritance</a> in the documentation. |
| `renderNote` | notes of type <a class="reference-link" href="../../Note%20Types/Render%20Note.md">Render Note</a> will be rendered using a code note (HTML or script) and it is necessary to point using this relation to which note should be rendered |
| `widget_relation` | target of this relation will be executed and rendered as a widget in the sidebar |
| `shareCss` | CSS note which will be injected into the share page. CSS note must be in the shared sub-tree as well. Consider using `share_hidden_from_tree` and `share_omit_default_css` as well. |
| `shareJs` | JavaScript note which will be injected into the share page. JS note must be in the shared sub-tree as well. Consider using `share_hidden_from_tree`. |
| `shareTemplate` | Embedded JavaScript note that will be used as the template for displaying the shared note. Falls back to the default template. Consider using `share_hidden_from_tree`. |
| `shareFavicon` | Favicon note to be set in the shared page. Typically you want to set it to share root and make it inheritable. Favicon note must be in the shared sub-tree as well. Consider using `share_hidden_from_tree`. |

View File

@ -3,4 +3,8 @@ By default, Trilium cannot be accessed in web browsers by requests coming from o
However, it is possible to manually configure [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/CORS) since Trilium v0.93.0 using environment variables or `config.ini`, as follows:
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col style="width:26.93%;"><col style="width:32.46%;"><col style="width:40.61%;"></colgroup><thead><tr><th>CORS Header</th><th>Corresponding option in <code>config.ini</code></th><th>Corresponding option in environment variables in the <code>Network</code> section</th></tr></thead><tbody><tr><td><code>Access-Control-Allow-Origin</code></td><td><code>TRILIUM_NETWORK_CORS_ALLOW_ORIGIN</code></td><td><code>corsAllowOrigin</code>&nbsp;</td></tr><tr><td><code>Access-Control-Allow-Methods</code></td><td><code>TRILIUM_NETWORK_CORS_ALLOW_METHODS</code></td><td><code>corsAllowMethods</code>&nbsp;</td></tr><tr><td><code>Access-Control-Allow-Headers</code></td><td><code>TRILIUM_NETWORK_CORS_ALLOW_HEADERS</code></td><td><code>corsAllowHeaders</code></td></tr></tbody></table></figure>
| CORS Header | Corresponding option in `config.ini` | Corresponding option in environment variables in the `Network` section |
| --- | --- | --- |
| `Access-Control-Allow-Origin` | `TRILIUM_NETWORK_CORS_ALLOW_ORIGIN` | `corsAllowOrigin` |
| `Access-Control-Allow-Methods` | `TRILIUM_NETWORK_CORS_ALLOW_METHODS` | `corsAllowMethods` |
| `Access-Control-Allow-Headers` | `TRILIUM_NETWORK_CORS_ALLOW_HEADERS` | `corsAllowHeaders` |

File diff suppressed because one or more lines are too long

View File

@ -7,7 +7,7 @@ For example:
* <a class="reference-link" href="../Note%20Types/Text.md">Text</a> notes are represented internally as HTML, using the <a class="reference-link" href="Technologies%20used/CKEditor.md">CKEditor</a> representation. Note that due to the custom plugins, some HTML elements are specific to Trilium only, for example the admonitions.
* <a class="reference-link" href="../Note%20Types/Code.md">Code</a> notes are plain text and are represented internally as-is.
* <a class="reference-link" href="../Basic%20Concepts%20and%20Features/Notes/Note%20List/Geo%20Map%20View.md">Geo Map</a> notes contain only minimal information (viewport, zoom) as a JSON.
* <a class="reference-link" href="../Note%20Types/Collections/Geo%20Map%20View.md">Geo Map</a> notes contain only minimal information (viewport, zoom) as a JSON.
* <a class="reference-link" href="../Note%20Types/Canvas.md">Canvas</a> notes are represented as JSON, with Trilium's own information alongside with <a class="reference-link" href="Technologies%20used/Excalidraw.md">Excalidraw</a>'s internal JSON representation format.
* <a class="reference-link" href="../Note%20Types/Mind%20Map.md">Mind Map</a> notes are represented as JSON, with the internal format of <a class="reference-link" href="Technologies%20used/MindElixir.md">MindElixir</a>.

View File

@ -16,7 +16,7 @@ Trilium allows you to share selected notes as **publicly accessible** read-only
### By note type
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col style="width:19.92%;"><col style="width:41.66%;"><col style="width:38.42%;"></colgroup><thead><tr><th>&nbsp;</th><th>Supported features</th><th>Limitations</th></tr></thead><tbody><tr><th><a class="reference-link" href="../Note%20Types/Text.md">Text</a></th><td><ul><li>Table of contents.</li><li>Syntax highlight of code blocks, provided a language is selected (does not work if “Auto-detected” is enabled).</li><li>Rendering for math equations.</li></ul></td><td><ul><li>Including notes is not supported.</li><li>Inline Mermaid diagrams are not rendered.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Code.md">Code</a></th><td><ul><li>Basic support (displaying the contents of the note in a monospace font).</li></ul></td><td><ul><li>No syntax highlight.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Saved%20Search.md">Saved Search</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/Relation%20Map.md">Relation Map</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/Note%20Map.md">Note Map</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/Render%20Note.md">Render Note</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/Collections.md">Collections</a></th><td><ul><li>The child notes are displayed in a fixed format.&nbsp;</li></ul></td><td><ul><li>More advanced view types such as the calendar view are not supported.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Mermaid%20Diagrams.md">Mermaid Diagrams</a></th><td><ul><li>The diagram is displayed as a vector image.</li></ul></td><td><ul><li>No further interaction supported.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Canvas.md">Canvas</a></th><td><ul><li>The diagram is displayed as a vector image.</li></ul></td><td><ul><li>No further interaction supported.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Web%20View.md">Web View</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/Mind%20Map.md">Mind Map</a></th><td>The diagram is displayed as a vector image.</td><td><ul><li>No further interaction supported.</li></ul></td></tr><tr><th><a class="reference-link" href="../Basic%20Concepts%20and%20Features/Notes/Note%20List/Geo%20Map%20View.md">Geo Map View</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/File.md">File</a></th><td>Basic interaction (downloading the file).</td><td><ul><li>No further interaction supported.</li></ul></td></tr></tbody></table></figure>
<table class="ck-table-resized"><colgroup><col style="width:19.92%;"><col style="width:41.66%;"><col style="width:38.42%;"></colgroup><thead><tr><th>&nbsp;</th><th>Supported features</th><th>Limitations</th></tr></thead><tbody><tr><th><a class="reference-link" href="../Note%20Types/Text.md">Text</a></th><td><ul><li>Table of contents.</li><li>Syntax highlight of code blocks, provided a language is selected (does not work if “Auto-detected” is enabled).</li><li>Rendering for math equations.</li></ul></td><td><ul><li>Including notes is not supported.</li><li>Inline Mermaid diagrams are not rendered.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Code.md">Code</a></th><td><ul><li>Basic support (displaying the contents of the note in a monospace font).</li></ul></td><td><ul><li>No syntax highlight.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Saved%20Search.md">Saved Search</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/Relation%20Map.md">Relation Map</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/Note%20Map.md">Note Map</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/Render%20Note.md">Render Note</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/Collections.md">Collections</a></th><td><ul><li>The child notes are displayed in a fixed format.&nbsp;</li></ul></td><td><ul><li>More advanced view types such as the calendar view are not supported.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Mermaid%20Diagrams.md">Mermaid Diagrams</a></th><td><ul><li>The diagram is displayed as a vector image.</li></ul></td><td><ul><li>No further interaction supported.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Canvas.md">Canvas</a></th><td><ul><li>The diagram is displayed as a vector image.</li></ul></td><td><ul><li>No further interaction supported.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Web%20View.md">Web View</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/Mind%20Map.md">Mind Map</a></th><td>The diagram is displayed as a vector image.</td><td><ul><li>No further interaction supported.</li></ul></td></tr><tr><th><a class="reference-link" href="../Note%20Types/Collections/Geo%20Map%20View.md">Geo Map View</a></th><td>Not supported.</td><td>&nbsp;</td></tr><tr><th><a class="reference-link" href="../Note%20Types/File.md">File</a></th><td>Basic interaction (downloading the file).</td><td><ul><li>No further interaction supported.</li></ul></td></tr></tbody></table>
While the sharing feature is powerful, it has some limitations:
@ -103,7 +103,7 @@ You can designate a specific note or folder as the root of your shared content b
## Attribute reference
<figure class="table"><table><thead><tr><th>Attribute</th><th>Description</th></tr></thead><tbody><tr><td><code>shareHiddenFromTree</code></td><td>this note is hidden from left navigation tree, but still accessible with its URL</td></tr><tr><td><code>shareExternalLink</code></td><td>note will act as a link to an external website in the share tree</td></tr><tr><td><code>shareAlias</code></td><td>define an alias using which the note will be available under <code>https://your_trilium_host/share/[your_alias]</code></td></tr><tr><td><code>shareOmitDefaultCss</code></td><td>default share page CSS will be omitted. Use when you make extensive styling changes.</td></tr><tr><td><code>shareRoot</code></td><td>marks note which is served on /share root.</td></tr><tr><td><code>shareDescription</code></td><td>define text to be added to the HTML meta tag for description</td></tr><tr><td><code>shareRaw</code></td><td>Note will be served in its raw format, without HTML wrapper. See also&nbsp;<a class="reference-link" href="Sharing/Serving%20directly%20the%20content%20o.md">Serving directly the content of a note</a>&nbsp;for an alternative method without setting an attribute.</td></tr><tr><td><code>shareDisallowRobotIndexing</code></td><td><p>Indicates to web crawlers that the page should not be indexed of this note by:</p><ul><li>Setting the <code>X-Robots-Tag: noindex</code> HTTP header.</li><li>Setting the <code>noindex, follow</code> meta tag.</li></ul></td></tr><tr><td><code>shareCredentials</code></td><td>require credentials to access this shared note. Value is expected to be in format <code>username:password</code>. Don't forget to make this inheritable to apply to child-notes/images.</td></tr><tr><td><code>shareIndex</code></td><td>Note with this label will list all roots of shared notes.</td></tr></tbody></table></figure>
<table><thead><tr><th>Attribute</th><th>Description</th></tr></thead><tbody><tr><td><code>shareHiddenFromTree</code></td><td>this note is hidden from left navigation tree, but still accessible with its URL</td></tr><tr><td><code>shareExternalLink</code></td><td>note will act as a link to an external website in the share tree</td></tr><tr><td><code>shareAlias</code></td><td>define an alias using which the note will be available under <code>https://your_trilium_host/share/[your_alias]</code></td></tr><tr><td><code>shareOmitDefaultCss</code></td><td>default share page CSS will be omitted. Use when you make extensive styling changes.</td></tr><tr><td><code>shareRoot</code></td><td>marks note which is served on /share root.</td></tr><tr><td><code>shareDescription</code></td><td>define text to be added to the HTML meta tag for description</td></tr><tr><td><code>shareRaw</code></td><td>Note will be served in its raw format, without HTML wrapper. See also&nbsp;<a class="reference-link" href="Sharing/Serving%20directly%20the%20content%20o.md">Serving directly the content of a note</a>&nbsp;for an alternative method without setting an attribute.</td></tr><tr><td><code>shareDisallowRobotIndexing</code></td><td><p>Indicates to web crawlers that the page should not be indexed of this note by:</p><ul><li>Setting the <code>X-Robots-Tag: noindex</code> HTTP header.</li><li>Setting the <code>noindex, follow</code> meta tag.</li></ul></td></tr><tr><td><code>shareCredentials</code></td><td>require credentials to access this shared note. Value is expected to be in format <code>username:password</code>. Don't forget to make this inheritable to apply to child-notes/images.</td></tr><tr><td><code>shareIndex</code></td><td>Note with this label will list all roots of shared notes.</td></tr></tbody></table>
## Credits

View File

@ -1,7 +1,9 @@
# Serving directly the content of a note
When accessing a shared note, Trilium will render it as a web page. Sometimes it's desirable to serve the content directly so that it can be used in a script or downloaded by the user.
<figure class="table"><table><thead><tr><th>A note displayed as a web page (HTML)</th><th>A note displayed as a raw format</th></tr></thead><tbody><tr><td><figure class="image"><img style="aspect-ratio:738/275;" src="1_Serving directly the conte.png" width="738" height="275"></figure></td><td><img src="Serving directly the conte.png"></td></tr></tbody></table></figure>
| A note displayed as a web page (HTML) | A note displayed as a raw format |
| --- | --- |
| <figure class="image"><img style="aspect-ratio:738/275;" src="1_Serving directly the conte.png" width="738" height="275"></figure> | ![](Serving%20directly%20the%20conte.png) |
## By adding an attribute to the note

View File

@ -1,5 +1,5 @@
# Leaflet
Leaflet is the library behind [Geo map](../../Basic%20Concepts%20and%20Features/Notes/Note%20List/Geo%20Map%20View.md) notes.
Leaflet is the library behind [Geo map](../../Note%20Types/Collections/Geo%20Map%20View.md) notes.
## Plugins

View File

@ -12,4 +12,12 @@ So far workspace consists of these features:
### Configuration
<figure class="table"><table><thead><tr><th>Label</th><th>Description</th></tr></thead><tbody><tr><td><code>workspace</code></td><td>Marks this note as a workspace, button to enter the workspace is controlled by this</td></tr><tr><td><code>workspaceIconClass</code></td><td>defines box icon CSS class which will be used in tab when hoisted to this note</td></tr><tr><td><code>workspaceTabBackgroundColor</code></td><td>CSS color used in the note tab when hoisted to this note, use any CSS color format, e.g. "lightblue" or "#ddd". See <a href="https://www.w3schools.com/cssref/css_colors.asp">https://www.w3schools.com/cssref/css_colors.asp</a>.</td></tr><tr><td><code>workspaceCalendarRoot</code></td><td>Marking a note with this label will define a new per-workspace calendar for&nbsp;<a class="reference-link" href="../../Advanced%20Usage/Advanced%20Showcases/Day%20Notes.md">Day Notes</a>. If there's no such note, the global calendar will be used.</td></tr><tr><td><code>workspaceTemplate</code></td><td>This note will appear in the selection of available template when creating new note, but only when hoisted into a workspace containing this template</td></tr><tr><td><code>workspaceSearchHome</code></td><td>new search notes will be created as children of this note when hoisted to some ancestor of this workspace note</td></tr><tr><td><code>workspaceInbox</code></td><td>default inbox location for new notes when hoisted to some ancestor of this workspace note</td></tr></tbody></table></figure>
| Label | Description |
| --- | --- |
| `workspace` | Marks this note as a workspace, button to enter the workspace is controlled by this |
| `workspaceIconClass` | defines box icon CSS class which will be used in tab when hoisted to this note |
| `workspaceTabBackgroundColor` | CSS color used in the note tab when hoisted to this note, use any CSS color format, e.g. "lightblue" or "#ddd". See [https://www.w3schools.com/cssref/css\_colors.asp](https://www.w3schools.com/cssref/css_colors.asp). |
| `workspaceCalendarRoot` | Marking a note with this label will define a new per-workspace calendar for <a class="reference-link" href="../../Advanced%20Usage/Advanced%20Showcases/Day%20Notes.md">Day Notes</a>. If there's no such note, the global calendar will be used. |
| `workspaceTemplate` | This note will appear in the selection of available template when creating new note, but only when hoisted into a workspace containing this template |
| `workspaceSearchHome` | new search notes will be created as children of this note when hoisted to some ancestor of this workspace note |
| `workspaceInbox` | default inbox location for new notes when hoisted to some ancestor of this workspace note |

View File

@ -10,8 +10,6 @@ When a note has one or more child notes, they will be listed at the end of the n
## View types
The view types dictate how the child notes are represented.
By default, the notes will be displayed in a grid, however there are also some other view types available.
The view types dictate how the child notes are represented. By default, the notes will be displayed in a grid, however there are also some other view types available.
Generally the view type can only be changed in a <a class="reference-link" href="../../Note%20Types/Collections.md">Collections</a> note from the <a class="reference-link" href="../UI%20Elements/Ribbon.md">Ribbon</a>, but it can also be changed manually on any type of note using the `#viewType` attribute.

View File

@ -1,111 +0,0 @@
# Calendar View
<figure class="image image-style-align-center"><img style="aspect-ratio:767/606;" src="4_Calendar View_image.png" width="767" height="606"></figure>
The Calendar view will display each child note in a calendar that has a start date and optionally an end date, as an event.
The Calendar view has multiple display modes:
* Week view, where all the 7 days of the week (or 5 if the weekends are hidden) are displayed in columns. This mode allows entering and displaying time-specific events, not just all-day events.
* Month view, where the entire month is displayed and all-day events can be inserted. Both time-specific events and all-day events are listed.
* Year view, which displays the entire year for quick reference.
* List view, which displays all the events of a given month in sequence.
Unlike other Collection view types, the Calendar view also allows some kind of interaction, such as moving events around as well as creating new ones.
## Creating a calendar
<figure class="table"><table><thead><tr><th>&nbsp;</th><th>&nbsp;</th><th>&nbsp;</th></tr></thead><tbody><tr><td>1</td><td><img src="2_Calendar View_image.png"></td><td>The Calendar View works only for Collection note types. To create a new note, right click on the note tree on the left and select Insert note after, or Insert child note and then select <em>Collection</em>.</td></tr><tr><td>2</td><td><img src="3_Calendar View_image.png"></td><td>Once created, the “View type” of the Collection needs changed to “Calendar”, by selecting the “Collection Properties” tab in the ribbon.</td></tr></tbody></table></figure>
## Creating a new event/note
* Clicking on a day will create a new child note and assign it to that particular day.
* You will be asked for the name of the new note. If the popup is dismissed by pressing the close button or escape, then the note will not be created.
* It's possible to drag across multiple days to set both the start and end date of a particular note.
![](Calendar%20View_image.png)
* Creating new notes from the calendar will respect the `~child:template` relation if set on the Collection note.
## Interacting with events
* Hovering the mouse over an event will display information about the note.
![](7_Calendar%20View_image.png)
* Left clicking the event will open a <a class="reference-link" href="../../UI%20Elements/Quick%20edit.md">Quick edit</a> to edit the note in a popup while allowing easy return to the calendar by just dismissing the popup.
* Middle clicking will open the note in a new tab.
* Right click will offer more options including opening the note in a new split or window.
* Drag and drop an event on the calendar to move it to another day.
* The length of an event can be changed by placing the mouse to the right edge of the event and dragging the mouse around.
## Configuring the calendar view
In the _Collections_ tab in the <a class="reference-link" href="../../UI%20Elements/Ribbon.md">Ribbon</a>, it's possible to adjust the following:
* Hide weekends from the week view.
* Display week numbers on the calendar.
## Configuring the calendar using attributes
The following attributes can be added to the Collection type:
<figure class="table"><table><thead><tr><th>Name</th><th>Description</th></tr></thead><tbody><tr><td><code>#calendar:hideWeekends</code></td><td>When present (regardless of value), it will hide Saturday and Sundays from the calendar.</td></tr><tr><td><code>#calendar:weekNumbers</code></td><td>When present (regardless of value), it will show the number of the week on the calendar.</td></tr><tr><td><code>#calendar:view</code></td><td><p>Which view to display in the calendar:</p><ul><li><code>timeGridWeek</code> for the <em>week</em> view;</li><li><code>dayGridMonth</code> for the <em>month</em> view;</li><li><code>multiMonthYear</code> for the <em>year</em> view;</li><li><code>listMonth</code> for the <em>list</em> view.</li></ul><p>Any other value will be dismissed and the default view (month) will be used instead.</p><p>The value of this label is automatically updated when changing the view using the UI buttons.</p></td></tr><tr><td><code>~child:template</code></td><td>Defines the template for newly created notes in the calendar (via dragging or clicking).</td></tr></tbody></table></figure>
In addition, the first day of the week can be either Sunday or Monday and can be adjusted from the application settings.
## Configuring the calendar events using attributes
For each note of the calendar, the following attributes can be used:
<figure class="table"><table><thead><tr><th>Name</th><th>Description</th></tr></thead><tbody><tr><td><code>#startDate</code></td><td>The date the event starts, which will display it in the calendar. The format is <code>YYYY-MM-DD</code> (year, month and day separated by a minus sign).</td></tr><tr><td><code>#endDate</code></td><td>Similar to <code>startDate</code>, mentions the end date if the event spans across multiple days. The date is inclusive, so the end day is also considered. The attribute can be missing for single-day events.</td></tr><tr><td><code>#startTime</code></td><td>The time the event starts at. If this value is missing, then the event is considered a full-day event. The format is <code>HH:MM</code> (hours in 24-hour format and minutes).</td></tr><tr><td><code>#endTime</code></td><td>Similar to <code>startTime</code>, it mentions the time at which the event ends (in relation with <code>endDate</code> if present, or <code>startDate</code>).</td></tr><tr><td><code>#color</code></td><td>Displays the event with a specified color (named such as <code>red</code>, <code>gray</code> or hex such as <code>#FF0000</code>). This will also change the color of the note in other places such as the note tree.</td></tr><tr><td><code>#calendar:color</code></td><td>Similar to <code>#color</code>, but applies the color only for the event in the calendar and not for other places such as the note tree.</td></tr><tr><td><code>#iconClass</code></td><td>If present, the icon of the note will be displayed to the left of the event title.</td></tr><tr><td><code>#calendar:title</code></td><td>Changes the title of an event to point to an attribute of the note other than the title, can either a label or a relation (without the <code>#</code> or <code>~</code> symbol). See <em>Use-cases</em> for more information.</td></tr><tr><td><code>#calendar:displayedAttributes</code></td><td>Allows displaying the value of one or more attributes in the calendar like this:&nbsp;&nbsp;&nbsp;&nbsp;<br><br><img src="9_Calendar View_image.png"> &nbsp;&nbsp;<br><br><code>#weight="70" #Mood="Good" #calendar:displayedAttributes="weight,Mood"</code>&nbsp;&nbsp;<br><br>It can also be used with relations, case in which it will display the title of the target note:&nbsp;&nbsp;&nbsp;<br><br><code>~assignee=@My assignee #calendar:displayedAttributes="assignee"</code></td></tr><tr><td><code>#calendar:startDate</code></td><td>Allows using a different label to represent the start date, other than <code>startDate</code> (e.g. <code>expiryDate</code>). The label name <strong>must not be</strong> prefixed with <code>#</code>. If the label is not defined for a note, the default will be used instead.</td></tr><tr><td><code>#calendar:endDate</code></td><td>Similar to <code>#calendar:startDate</code>, allows changing the attribute which is being used to read the end date.</td></tr><tr><td><code>#calendar:startTime</code></td><td>Similar to <code>#calendar:startDate</code>, allows changing the attribute which is being used to read the start time.</td></tr><tr><td><code>#calendar:endTime</code></td><td>Similar to <code>#calendar:startDate</code>, allows changing the attribute which is being used to read the end time.</td></tr></tbody></table></figure>
## How the calendar works
![](11_Calendar%20View_image.png)
The calendar displays all the child notes of the Collection that have a `#startDate`. An `#endDate` can optionally be added.
If editing the start date and end date from the note itself is desirable, the following attributes can be added to the Collection note:
```
#viewType=calendar #label:startDate(inheritable)="promoted,alias=Start Date,single,date"
#label:endDate(inheritable)="promoted,alias=End Date,single,date"
#hidePromotedAttributes
```
This will result in:
![](10_Calendar%20View_image.png)
When not used in a Journal, the calendar is recursive. That is, it will look for events not just in its child notes but also in the children of these child notes.
## Use-cases
### Using with the Journal / calendar
It is possible to integrate the calendar view into the Journal with day notes. In order to do so change the note type of the Journal note (calendar root) to Collection and then select the Calendar View.
Based on the `#calendarRoot` (or `#workspaceCalendarRoot`) attribute, the calendar will know that it's in a calendar and apply the following:
* The calendar events are now rendered based on their `dateNote` attribute rather than `startDate`.
* Interactive editing such as dragging over an empty era or resizing an event is no longer possible.
* Clicking on the empty space on a date will automatically open that day's note or create it if it does not exist.
* Direct children of a day note will be displayed on the calendar despite not having a `dateNote` attribute. Children of the child notes will not be displayed.
<img src="8_Calendar View_image.png" width="1217" height="724">
### Using a different attribute as event title
By default, events are displayed on the calendar by their note title. However, it is possible to configure a different attribute to be displayed instead.
To do so, assign `#calendar:title` to the child note (not the calendar/Collection note), with the value being `name` where `name` can be any label (make not to add the `#` prefix). The attribute can also come through inheritance such as a template attribute. If the note does not have the requested label, the title of the note will be used instead.
<figure class="table" style="width:100%;"><table><thead><tr><th>&nbsp;</th><th>&nbsp;</th></tr></thead><tbody><tr><td><pre><code class="language-text-x-trilium-auto">#startDate=2025-02-11 #endDate=2025-02-13 #name="My vacation" #calendar:title="name"</code></pre></td><td><p>&nbsp;</p><figure class="image image-style-align-center"><img style="aspect-ratio:445/124;" src="5_Calendar View_image.png" width="445" height="124"></figure></td></tr></tbody></table></figure>
### Using a relation attribute as event title
Similarly to using an attribute, use `#calendar:title` and set it to `name` where `name` is the name of the relation to use.
Moreover, if there are more relations of the same name, they will be displayed as multiple events coming from the same note.
<figure class="table" style="width:100%;"><table><thead><tr><th>&nbsp;</th><th>&nbsp;</th></tr></thead><tbody><tr><td><pre><code class="language-text-x-trilium-auto">#startDate=2025-02-14 #endDate=2025-02-15 ~for=@John Smith ~for=@Jane Doe #calendar:title="for"</code></pre></td><td><img src="6_Calendar View_image.png" width="294" height="151"></td></tr></tbody></table></figure>
Note that it's even possible to have a `#calendar:title` on the target note (e.g. “John Smith”) which will try to render an attribute of it. Note that it's not possible to use a relation here as well for safety reasons (an accidental recursion  of attributes could cause the application to loop infinitely).
<figure class="table" style="width:100%;"><table><thead><tr><th>&nbsp;</th><th>&nbsp;</th></tr></thead><tbody><tr><td><pre><code class="language-text-x-trilium-auto">#calendar:title="shortName" #shortName="John S."</code></pre></td><td><figure class="image image-style-align-center"><img style="aspect-ratio:296/150;" src="1_Calendar View_image.png" width="296" height="150"></figure></td></tr></tbody></table></figure>

View File

@ -1,134 +0,0 @@
# Geo Map View
> [!IMPORTANT]
> Starting with Trilium v0.97.0, the geo map has been converted from a standalone [note type](../../../Note%20Types.md) to a type of view for the <a class="reference-link" href="../Note%20List.md">Note List</a>. 
<figure class="image image-style-align-center"><img style="aspect-ratio:892/675;" src="9_Geo Map View_image.png" width="892" height="675"></figure>
This note type displays the children notes on a geographical map, based on an attribute. It is also possible to add new notes at a specific location using the built-in interface.
## Creating a new geo map
<figure class="table"><table><thead><tr><th>&nbsp;</th><th>&nbsp;</th><th>&nbsp;</th></tr></thead><tbody><tr><td>1</td><td><figure class="image"><img style="aspect-ratio:483/413;" src="15_Geo Map View_image.png" width="483" height="413"></figure></td><td>Right click on any note on the note tree and select <em>Insert child note</em><em>Geo Map (beta)</em>.</td></tr><tr><td>2</td><td><figure class="image image-style-align-center image_resized" style="width:53.44%;"><img style="aspect-ratio:1720/1396;" src="8_Geo Map View_image.png" width="1720" height="1396"></figure></td><td>By default the map will be empty and will show the entire world.</td></tr></tbody></table></figure>
## Repositioning the map
* Click and drag the map in order to move across the map.
* Use the mouse wheel, two-finger gesture on a touchpad or the +/- buttons on the top-left to adjust the zoom.
The position on the map and the zoom are saved inside the map note and restored when visiting again the note.
## Adding a marker using the map
### Adding a new note using the plus button
<figure class="table"><table><thead><tr><th>&nbsp;</th><th>&nbsp;</th><th>&nbsp;</th></tr></thead><tbody><tr><td>1</td><td>To create a marker, first navigate to the desired point on the map. Then press the <img src="10_Geo Map View_image.png"> button in the&nbsp;<a href="../../UI%20Elements/Floating%20buttons.md">Floating buttons</a>&nbsp;(top-right) area.&nbsp;<br><br>If the button is not visible, make sure the button section is visible by pressing the chevron button (<img src="17_Geo Map View_image.png">) in the top-right of the map.</td><td>&nbsp;</td></tr><tr><td>2</td><td><img class="image_resized" style="aspect-ratio:1730/416;width:100%;" src="2_Geo Map View_image.png" width="1730" height="416"></td><td>Once pressed, the map will enter in the insert mode, as illustrated by the notification.&nbsp;&nbsp;&nbsp;&nbsp;<br><br>Simply click the point on the map where to place the marker, or the Escape key to cancel.</td></tr><tr><td>3</td><td><img class="image_resized" style="aspect-ratio:1586/404;width:100%;" src="7_Geo Map View_image.png" width="1586" height="404"></td><td>Enter the name of the marker/note to be created.</td></tr><tr><td>4</td><td><img class="image_resized" style="aspect-ratio:1696/608;width:100%;" src="16_Geo Map View_image.png" width="1696" height="608"></td><td>Once confirmed, the marker will show up on the map and it will also be displayed as a child note of the map.</td></tr></tbody></table></figure>
### Adding a new note using the contextual menu
1. Right click anywhere on the map, where to place the newly created marker (and corresponding note).
2. Select _Add a marker at this location_.
3. Enter the name of the newly created note.
4. The map should be updated with the new marker.
### Adding an existing note on note from the note tree
1. Select the desired note in the <a class="reference-link" href="../../UI%20Elements/Note%20Tree.md">Note Tree</a>.
2. Hold the mouse on the note and drag it to the map to the desired location.
3. The map should be updated with the new marker.
This works for:
* Notes that are not part of the geo map, case in which a [clone](../Cloning%20Notes.md) will be created.
* Notes that are a child of the geo map but not yet positioned on the map.
* Notes that are a child of the geo map and also positioned, case in which the marker will be relocated to the new position.
## How the location of the markers is stored
The location of a marker is stored in the `#geolocation` attribute of the child notes:
<img src="18_Geo Map View_image.png" width="1288" height="278">
This value can be added manually if needed. The value of the attribute is made up of the latitude and longitude separated by a comma.
## Repositioning markers
It's possible to reposition existing markers by simply drag and dropping them to the new destination.
As soon as the mouse is released, the new position is saved.
If moved by mistake, there is currently no way to undo the change. If the mouse was not yet released, it's possible to force a refresh of the page (<kbd>Ctrl</kbd>+<kbd>R</kbd> ) to cancel it.
## Interaction with the markers
* Hovering over a marker will display a <a class="reference-link" href="../../UI%20Elements/Note%20Tooltip.md">Note Tooltip</a> with the content of the note it belongs to.
* Clicking on the note title in the tooltip will navigate to the note in the current view.
* Middle-clicking the marker will open the note in a new tab.
* Right-clicking the marker will open a contextual menu (as described below).
* If the map is in read-only mode, clicking on a marker will open a <a class="reference-link" href="../../UI%20Elements/Quick%20edit.md">Quick edit</a> popup for the corresponding note.
## Contextual menu
It's possible to press the right mouse button to display a contextual menu.
1. If right-clicking an empty section of the map (not on a marker), it allows to:
1. Displays the latitude and longitude. Clicking this option will copy them to the clipboard.
2. Open the location using an external application (if the operating system supports it).
3. Adding a new marker at that location.
2. If right-clicking on a marker, it allows to:
1. Displays the latitude and longitude. Clicking this option will copy them to the clipboard.
2. Open the location using an external application (if the operating system supports it).
3. Open the note in a new tab, split or window.
4. Remove the marker from the map, which will remove the `#geolocation` attribute of the note. To add it back again, the coordinates have to be manually added back in.
## Icon and color of the markers
<figure class="image image-style-align-center"><img style="aspect-ratio:523/295;" src="Geo Map View_image.jpg" alt="image" width="523" height="295"></figure>
The markers will have the same icon as the note.
It's possible to add a custom color to a marker by assigning them a `#color` attribute such as `#color=green`.
## Adding the coordinates manually
In a nutshell, create a child note and set the `#geolocation` attribute to the coordinates.
The value of the attribute is made up of the latitude and longitude separated by a comma.
### Adding from Google Maps
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col style="width:2.77%;"><col style="width:33.24%;"><col style="width:63.99%;"></colgroup><thead><tr><th>&nbsp;</th><th>&nbsp;</th><th>&nbsp;</th></tr></thead><tbody><tr><td>1</td><td><figure class="image image-style-align-center image_resized" style="width:56.84%;"><img style="aspect-ratio:732/918;" src="12_Geo Map View_image.png" width="732" height="918"></figure></td><td>Go to Google Maps on the web and look for a desired location, right click on it and a context menu will show up.&nbsp;&nbsp;&nbsp;&nbsp;<br><br>Simply click on the first item displaying the coordinates and they will be copied to clipboard.&nbsp;&nbsp;&nbsp;&nbsp;<br><br>Then paste the value inside the text box into the <code>#geolocation</code> attribute of a child note of the map (don't forget to surround the value with a <code>"</code> character).</td></tr><tr><td>2</td><td><figure class="image image-style-align-center image_resized" style="width:100%;"><img style="aspect-ratio:518/84;" src="4_Geo Map View_image.png" width="518" height="84"></figure></td><td>In Trilium, create a child note under the map.</td></tr><tr><td>3</td><td><figure class="image image-style-align-center image_resized" style="width:100%;"><img style="aspect-ratio:1074/276;" src="11_Geo Map View_image.png" width="1074" height="276"></figure></td><td>And then go to Owned Attributes and type <code>#geolocation="</code>, then paste from the clipboard as-is and then add the ending <code>"</code> character. Press Enter to confirm and the map should now be updated to contain the new note.</td></tr></tbody></table></figure>
### Adding from OpenStreetMap
Similarly to the Google Maps approach:
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col style="width:2.77%;"><col style="width:33.42%;"><col style="width:63.81%;"></colgroup><thead><tr><th>&nbsp;</th><th>&nbsp;</th><th>&nbsp;</th></tr></thead><tbody><tr><td>1</td><td><img class="image_resized" style="aspect-ratio:562/454;width:100%;" src="1_Geo Map View_image.png" width="562" height="454"></td><td>Go to any location on openstreetmap.org and right click to bring up the context menu. Select the “Show address” item.</td></tr><tr><td>2</td><td><img class="image_resized" style="aspect-ratio:696/480;width:100%;" src="Geo Map View_image.png" width="696" height="480"></td><td>The address will be visible in the top-left of the screen, in the place of the search bar.&nbsp;&nbsp;&nbsp;&nbsp;<br><br>Select the coordinates and copy them into the clipboard.</td></tr><tr><td>3</td><td><img class="image_resized" style="aspect-ratio:640/276;width:100%;" src="5_Geo Map View_image.png" width="640" height="276"></td><td>Simply paste the value inside the text box into the <code>#geolocation</code> attribute of a child note of the map and then it should be displayed on the map.</td></tr></tbody></table></figure>
## Adding GPS tracks (.gpx)
Trilium has basic support for displaying GPS tracks on the geo map.
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col style="width:2.77%;"><col style="width:30.22%;"><col style="width:67.01%;"></colgroup><thead><tr><th>&nbsp;</th><th>&nbsp;</th><th>&nbsp;</th></tr></thead><tbody><tr><td>1</td><td><figure class="image image-style-align-center"><img style="aspect-ratio:226/74;" src="3_Geo Map View_image.png" width="226" height="74"></figure></td><td>To add a track, simply drag &amp; drop a .gpx file inside the geo map in the note tree.</td></tr><tr><td>2</td><td><figure class="image image-style-align-center"><img style="aspect-ratio:322/222;" src="14_Geo Map View_image.png" width="322" height="222"></figure></td><td>In order for the file to be recognized as a GPS track, it needs to show up as <code>application/gpx+xml</code> in the <em>File type</em> field.</td></tr><tr><td>3</td><td><figure class="image image-style-align-center"><img style="aspect-ratio:620/530;" src="6_Geo Map View_image.png" width="620" height="530"></figure></td><td>When going back to the map, the track should now be visible.&nbsp;&nbsp;&nbsp;&nbsp;<br><br>The start and end points of the track are indicated by the two blue markers.</td></tr></tbody></table></figure>
> [!NOTE]
> The starting point of the track will be displayed as a marker, with the name of the note underneath. The start marker will also respect the icon and the `color` of the note. The end marker is displayed with a distinct icon.
>
> If the GPX contains waypoints, they will also be displayed. If they have a name, it is displayed when hovering over it with the mouse.
## Read-only mode
When a map is in read-only all editing features will be disabled such as:
* The add button in the <a class="reference-link" href="../../UI%20Elements/Floating%20buttons.md">Floating buttons</a>.
* Dragging markers.
* Editing from the contextual menu (removing locations or adding new items).
To enable read-only mode simply press the _Lock_ icon from the <a class="reference-link" href="../../UI%20Elements/Floating%20buttons.md">Floating buttons</a>. To disable it, press the button again.
## Troubleshooting
<figure class="image image-style-align-right image_resized" style="width:34.06%;"><img style="aspect-ratio:678/499;" src="13_Geo Map View_image.png" width="678" height="499"></figure>
### Grid-like artifacts on the map
This occurs if the application is not at 100% zoom which causes the pixels of the map to not render correctly due to fractional scaling. The only possible solution is to set the UI zoom at 100% (default keyboard shortcut is <kbd>Ctrl</kbd>+<kbd>0</kbd>).

View File

@ -40,4 +40,4 @@ When pressed, the note will become editable but will become read-only again afte
Some note types have a special behavior based on whether the read-only mode is enabled:
* <a class="reference-link" href="../../Note%20Types/Mermaid%20Diagrams.md">Mermaid Diagrams</a> will hide the Mermaid source code and display the diagram preview in full-size. In this case, the read-only mode can be easily toggled on or off via a dedicated button in the <a class="reference-link" href="../UI%20Elements/Floating%20buttons.md">Floating buttons</a> area.
* <a class="reference-link" href="Note%20List/Geo%20Map%20View.md">Geo Map View</a> will disallow all interaction that would otherwise change the map (dragging notes, adding new items).
* <a class="reference-link" href="../../Note%20Types/Collections/Geo%20Map%20View.md">Geo Map View</a> will disallow all interaction that would otherwise change the map (dragging notes, adding new items).

View File

@ -5,7 +5,26 @@ These are user-created themes which were made publicly available:
These themes may or may not be compatible with the latest versions of TriliumNext and are based on the original/legacy theme.
<figure class="table"><table><thead><tr><th>Theme</th><th>Author</th></tr></thead><tbody><tr><td><a href="https://github.com/tobealive/trilium-midnight-theme">Midnight</a></td><td><a href="https://github.com/tobealive">tobealive</a></td></tr><tr><td><a href="https://github.com/tobealive/trilum-eote-theme">EOTE</a></td><td><a href="https://github.com/tobealive">tobealive</a></td></tr><tr><td><a href="https://github.com/Abourass/TriliumThemes">Trilium Themes</a></td><td><a href="https://github.com/Abourass">Abourass</a></td></tr><tr><td><a href="https://github.com/ZMonk91/Material-Dark-Trilium">MaterialDark</a></td><td><a href="https://github.com/ZMonk91">ZMonk91</a></td></tr><tr><td><a href="https://github.com/jaroet/trilium-theme-lightslategray">lightslategray</a></td><td><a href="https://github.com/jaroet">jaroet</a></td></tr><tr><td><a href="https://github.com/raphwriter/trilium-theme-melon">melon-4</a></td><td><a href="https://github.com/raphwriter">raphwriter</a></td></tr><tr><td><a href="https://github.com/Engr-AllanG/trilium-themes">Neon_Dark</a></td><td><a href="https://github.com/Engr-AllanG">Engr-AllanG</a></td></tr><tr><td><a href="https://github.com/Engr-AllanG/trilium-themes">Coder_Dark</a></td><td><a href="https://github.com/Engr-AllanG">Engr-AllanG</a></td></tr><tr><td><a href="https://github.com/idelem/trilium-theme-velvet">velvet</a></td><td><a href="https://github.com/idelem">idelem</a></td></tr><tr><td><a href="https://github.com/SADAVA/trilium-notes-theme-dark-plus">Dark Plus</a></td><td><a href="https://github.com/SADAVA">SADAVA</a></td></tr><tr><td><a href="https://github.com/WKSu/trilium-solarized-theme">Solarized</a></td><td><a href="https://github.com/WKSu">WKSu</a></td></tr><tr><td><a href="https://github.com/en3r0/Trilium-Nord-Theme">Nord</a></td><td><a href="https://github.com/en3r0">en3r0</a></td></tr><tr><td><a href="https://github.com/AllanZyne/trilium-bear-theme">Bear Note Light</a></td><td><a href="https://github.com/AllanZyne">AllanZyne</a></td></tr><tr><td><a href="https://github.com/AllanZyne/trilium-bear-theme">Bear Note Dark</a></td><td><a href="https://github.com/AllanZyne">AllanZyne</a></td></tr><tr><td><a href="https://github.com/Sebiann/miku-hatsune-trilium-theme">Miku Hatsune</a></td><td><a href="https://github.com/Sebiann">Sebiann</a></td></tr><tr><td><a href="https://github.com/cwilliams5/Midnight-Trilium-Dark-Mode">Midnight</a></td><td><a href="https://github.com/cwilliams5">cwilliams5</a></td></tr><tr><td><a href="https://github.com/SiriusXT/trilium-theme-blue">Blue</a> (light)</td><td><a href="https://github.com/SiriusXT">SiriusXT</a></td></tr><tr><td><a href="https://github.com/SiriusXT/trilium-theme-blue">Blue</a> (dark)</td><td><a href="https://github.com/SiriusXT">SiriusXT</a></td></tr></tbody></table></figure>
| Theme | Author |
| --- | --- |
| [Midnight](https://github.com/tobealive/trilium-midnight-theme) | [tobealive](https://github.com/tobealive) |
| [EOTE](https://github.com/tobealive/trilum-eote-theme) | [tobealive](https://github.com/tobealive) |
| [Trilium Themes](https://github.com/Abourass/TriliumThemes) | [Abourass](https://github.com/Abourass) |
| [MaterialDark](https://github.com/ZMonk91/Material-Dark-Trilium) | [ZMonk91](https://github.com/ZMonk91) |
| [lightslategray](https://github.com/jaroet/trilium-theme-lightslategray) | [jaroet](https://github.com/jaroet) |
| [melon-4](https://github.com/raphwriter/trilium-theme-melon) | [raphwriter](https://github.com/raphwriter) |
| [Neon\_Dark](https://github.com/Engr-AllanG/trilium-themes) | [Engr-AllanG](https://github.com/Engr-AllanG) |
| [Coder\_Dark](https://github.com/Engr-AllanG/trilium-themes) | [Engr-AllanG](https://github.com/Engr-AllanG) |
| [velvet](https://github.com/idelem/trilium-theme-velvet) | [idelem](https://github.com/idelem) |
| [Dark Plus](https://github.com/SADAVA/trilium-notes-theme-dark-plus) | [SADAVA](https://github.com/SADAVA) |
| [Solarized](https://github.com/WKSu/trilium-solarized-theme) | [WKSu](https://github.com/WKSu) |
| [Nord](https://github.com/en3r0/Trilium-Nord-Theme) | [en3r0](https://github.com/en3r0) |
| [Bear Note Light](https://github.com/AllanZyne/trilium-bear-theme) | [AllanZyne](https://github.com/AllanZyne) |
| [Bear Note Dark](https://github.com/AllanZyne/trilium-bear-theme) | [AllanZyne](https://github.com/AllanZyne) |
| [Miku Hatsune](https://github.com/Sebiann/miku-hatsune-trilium-theme) | [Sebiann](https://github.com/Sebiann) |
| [Midnight](https://github.com/cwilliams5/Midnight-Trilium-Dark-Mode) | [cwilliams5](https://github.com/cwilliams5) |
| [Blue](https://github.com/SiriusXT/trilium-theme-blue) (light) | [SiriusXT](https://github.com/SiriusXT) |
| [Blue](https://github.com/SiriusXT/trilium-theme-blue) (dark) | [SiriusXT](https://github.com/SiriusXT) |
> [!TIP]
> If you would like to add your theme to this gallery, write a new post in [👐 Show and tell](https://github.com/TriliumNext/Notes/discussions/categories/show-and-tell).

View File

@ -16,6 +16,6 @@ The tooltip can be found in multiple places, including:
* In <a class="reference-link" href="../../Note%20Types/Text.md">Text</a> notes, when hovering over <a class="reference-link" href="../../Note%20Types/Text/Links/Internal%20(reference)%20links.md">Internal (reference) links</a> .
* <a class="reference-link" href="../../Note%20Types/Collections.md">Collections</a>:
* <a class="reference-link" href="../Notes/Note%20List/Geo%20Map%20View.md">Geo Map View</a>, when hovering over a marker.
* <a class="reference-link" href="../Notes/Note%20List/Calendar%20View.md">Calendar View</a>, when hovering over an event.
* <a class="reference-link" href="../Notes/Note%20List/Table%20View.md">Table View</a>, when hovering over a note title, or over a [relation](../../Advanced%20Usage/Attributes/Relations.md).
* <a class="reference-link" href="../../Note%20Types/Collections/Geo%20Map%20View.md">Geo Map View</a>, when hovering over a marker.
* <a class="reference-link" href="../../Note%20Types/Collections/Calendar%20View.md">Calendar View</a>, when hovering over an event.
* <a class="reference-link" href="../../Note%20Types/Collections/Table%20View.md">Table View</a>, when hovering over a note title, or over a [relation](../../Advanced%20Usage/Attributes/Relations.md).

View File

@ -26,8 +26,8 @@ This feature is also well integrated with <a class="reference-link" href="../..
* or, press <kbd>Ctrl</kbd>+<kbd>Right click</kbd> on the link.
* On a <a class="reference-link" href="Note%20Tooltip.md">Note Tooltip</a>, press the quick edit icon.
* In <a class="reference-link" href="../../Note%20Types/Collections.md">Collections</a>:
* For <a class="reference-link" href="../Notes/Note%20List/Calendar%20View.md">Calendar View</a>:
* For <a class="reference-link" href="../../Note%20Types/Collections/Calendar%20View.md">Calendar View</a>:
* Clicking on an event will open that event for quick editing.
* If the calendar is for the <a class="reference-link" href="../../Advanced%20Usage/Advanced%20Showcases/Day%20Notes.md">Day Notes</a> root, clicking on the day number will open the popup for that day note.
* For <a class="reference-link" href="../Notes/Note%20List/Geo%20Map%20View.md">Geo Map View</a>:
* For <a class="reference-link" href="../../Note%20Types/Collections/Geo%20Map%20View.md">Geo Map View</a>:
* Clicking on a marker will open that marker, but only if the map is in read-only mode.

View File

@ -3,7 +3,7 @@ This section presents the most important changes by version. For a full set of c
* v0.97.0:
* Books are now <a class="reference-link" href="Note%20Types/Collections.md">Collections</a>.
* <a class="reference-link" href="Basic%20Concepts%20and%20Features/Notes/Note%20List/Table%20View.md">Table View</a> is a new collection type displaying notes and attributes in an editable grid.
* <a class="reference-link" href="Note%20Types/Collections/Table%20View.md">Table View</a> is a new collection type displaying notes and attributes in an editable grid.
* <a class="reference-link" href="Basic%20Concepts%20and%20Features/UI%20Elements/Quick%20edit.md">Quick edit</a> is introduced, adding a new way to edit notes in a popup instead of opening a new tab. It also integrates well with <a class="reference-link" href="Note%20Types/Collections.md">Collections</a>.
* v0.96.0:
* <a class="reference-link" href="Note%20Types/Text.md">Text</a> gain premium features thanks to a collaboration with the CKEditor team:
@ -21,12 +21,12 @@ This section presents the most important changes by version. For a full set of c
* <a class="reference-link" href="Note%20Types/Text.md">Text</a> notes can now have adjustable <a class="reference-link" href="Note%20Types/Text/Content%20language%20%26%20Right-to-le.md">Content language &amp; Right-to-left support</a>.
* <a class="reference-link" href="Basic%20Concepts%20and%20Features/Notes/Export%20as%20PDF.md">Export as PDF</a>
* <a class="reference-link" href="Basic%20Concepts%20and%20Features/Zen%20mode.md">Zen mode</a>
* <a class="reference-link" href="Basic%20Concepts%20and%20Features/Notes/Note%20List/Calendar%20View.md">Calendar View</a>, allowing notes to be displayed in a monthly grid based on start and end dates.
* <a class="reference-link" href="Note%20Types/Collections/Calendar%20View.md">Calendar View</a>, allowing notes to be displayed in a monthly grid based on start and end dates.
* v0.91.5:
* Significant improvements for mobile.
* <a class="reference-link" href="Note%20Types/Text/Footnotes.md">Footnotes</a> are now supported in <a class="reference-link" href="Note%20Types/Text.md">Text</a> notes.
* Mermaid diagrams can now be inserted inline within <a class="reference-link" href="Note%20Types/Text.md">Text</a> notes.
* The TriliumNext theme is introduced, bringing a more modern design to the application.
* <a class="reference-link" href="Basic%20Concepts%20and%20Features/Notes/Note%20List/Geo%20Map%20View.md">Geo Map View</a>, displaying notes as markers on a geographical map for easy trip planning.
* <a class="reference-link" href="Note%20Types/Collections/Geo%20Map%20View.md">Geo Map View</a>, displaying notes as markers on a geographical map for easy trip planning.
* v0.90.8:
* A new note type was introduced: <a class="reference-link" href="Note%20Types/Mind%20Map.md">Mind Map</a>

View File

@ -25,4 +25,18 @@ It is possible to change the type of a note after it has been created via the _B
The following note types are supported by Trilium:
<figure class="table" style="width:100%;"><table class="ck-table-resized"><colgroup><col style="width:29.42%;"><col style="width:70.58%;"></colgroup><thead><tr><th>Note Type</th><th>Description</th></tr></thead><tbody><tr><td><a class="reference-link" href="Note%20Types/Text.md">Text</a></td><td>The default note type, which allows for rich text formatting, images, admonitions and right-to-left support.</td></tr><tr><td><a class="reference-link" href="Note%20Types/Code.md">Code</a></td><td>Uses a mono-space font and can be used to store larger chunks of code or plain text than a text note, and has better syntax highlighting.</td></tr><tr><td><a class="reference-link" href="Note%20Types/Saved%20Search.md">Saved Search</a></td><td>Stores the information about a search (the search text, criteria, etc.) for later use. Can be used for quick filtering of a large amount of notes, for example. The search can easily be triggered.</td></tr><tr><td><a class="reference-link" href="Note%20Types/Relation%20Map.md">Relation Map</a></td><td>Allows easy creation of notes and relations between them. Can be used for mainly relational data such as a family tree.</td></tr><tr><td><a class="reference-link" href="Note%20Types/Note%20Map.md">Note Map</a></td><td>Displays the relationships between the notes, whether via relations or their hierarchical structure.</td></tr><tr><td><a class="reference-link" href="Note%20Types/Render%20Note.md">Render Note</a></td><td>Used in&nbsp;<a class="reference-link" href="Scripting.md">Scripting</a>, it displays the HTML content of another note. This allows displaying any kind of content, provided there is a script behind it to generate it.</td></tr><tr><td><a class="reference-link" href="Note%20Types/Collections.md">Collections</a></td><td><p>Displays the children of the note either as a grid, a list, or for a more specialized case: a calendar.</p><p>Generally useful for easy reading of short notes.</p></td></tr><tr><td><a class="reference-link" href="Note%20Types/Mermaid%20Diagrams.md">Mermaid Diagrams</a></td><td>Displays diagrams such as bar charts, flow charts, state diagrams, etc. Requires a bit of technical knowledge since the diagrams are written in a specialized format.</td></tr><tr><td><a class="reference-link" href="Note%20Types/Canvas.md">Canvas</a></td><td>Allows easy drawing of sketches, diagrams, handwritten content. Uses the same technology behind <a href="https://excalidraw.com">excalidraw.com</a>.</td></tr><tr><td><a class="reference-link" href="Note%20Types/Web%20View.md">Web View</a></td><td>Displays the content of an external web page, similar to a browser.</td></tr><tr><td><a class="reference-link" href="Note%20Types/Mind%20Map.md">Mind Map</a></td><td>Easy for brainstorming ideas, by placing them in a hierarchical layout.</td></tr><tr><td><a class="reference-link" href="Basic%20Concepts%20and%20Features/Notes/Note%20List/Geo%20Map%20View.md">Geo Map View</a></td><td>Displays the children of the note as a geographical map, one use-case would be to plan vacations. It even has basic support for tracks. Notes can also be created from it.</td></tr><tr><td><a class="reference-link" href="Note%20Types/File.md">File</a></td><td>Represents an uploaded file such as PDFs, images, video or audio files.</td></tr></tbody></table></figure>
| Note Type | Description |
| --- | --- |
| <a class="reference-link" href="Note%20Types/Text.md">Text</a> | The default note type, which allows for rich text formatting, images, admonitions and right-to-left support. |
| <a class="reference-link" href="Note%20Types/Code.md">Code</a> | Uses a mono-space font and can be used to store larger chunks of code or plain text than a text note, and has better syntax highlighting. |
| <a class="reference-link" href="Note%20Types/Saved%20Search.md">Saved Search</a> | Stores the information about a search (the search text, criteria, etc.) for later use. Can be used for quick filtering of a large amount of notes, for example. The search can easily be triggered. |
| <a class="reference-link" href="Note%20Types/Relation%20Map.md">Relation Map</a> | Allows easy creation of notes and relations between them. Can be used for mainly relational data such as a family tree. |
| <a class="reference-link" href="Note%20Types/Note%20Map.md">Note Map</a> | Displays the relationships between the notes, whether via relations or their hierarchical structure. |
| <a class="reference-link" href="Note%20Types/Render%20Note.md">Render Note</a> | Used in <a class="reference-link" href="Scripting.md">Scripting</a>, it displays the HTML content of another note. This allows displaying any kind of content, provided there is a script behind it to generate it. |
| <a class="reference-link" href="Note%20Types/Collections.md">Collections</a> | Displays the children of the note either as a grid, a list, or for a more specialized case: a calendar.<br><br>Generally useful for easy reading of short notes. |
| <a class="reference-link" href="Note%20Types/Mermaid%20Diagrams.md">Mermaid Diagrams</a> | Displays diagrams such as bar charts, flow charts, state diagrams, etc. Requires a bit of technical knowledge since the diagrams are written in a specialized format. |
| <a class="reference-link" href="Note%20Types/Canvas.md">Canvas</a> | Allows easy drawing of sketches, diagrams, handwritten content. Uses the same technology behind [excalidraw.com](https://excalidraw.com). |
| <a class="reference-link" href="Note%20Types/Web%20View.md">Web View</a> | Displays the content of an external web page, similar to a browser. |
| <a class="reference-link" href="Note%20Types/Mind%20Map.md">Mind Map</a> | Easy for brainstorming ideas, by placing them in a hierarchical layout. |
| <a class="reference-link" href="Note%20Types/Collections/Geo%20Map%20View.md">Geo Map View</a> | Displays the children of the note as a geographical map, one use-case would be to plan vacations. It even has basic support for tracks. Notes can also be created from it. |
| <a class="reference-link" href="Note%20Types/File.md">File</a> | Represents an uploaded file such as PDFs, images, video or audio files. |

View File

@ -3,14 +3,14 @@ Collections are a unique type of notes that don't have a content, but instead di
Classic collections are read-only mode and compiles the contents of all child notes into one continuous view. This makes it ideal for reading extensive information broken into smaller, manageable segments.
* <a class="reference-link" href="../Basic%20Concepts%20and%20Features/Notes/Note%20List/Grid%20View.md">Grid View</a> which is the default presentation method for child notes (see <a class="reference-link" href="../Basic%20Concepts%20and%20Features/Notes/Note%20List.md">Note List</a>), where the notes are displayed as tiles with their title and content being visible.
* <a class="reference-link" href="../Basic%20Concepts%20and%20Features/Notes/Note%20List/List%20View.md">List View</a> is similar to <a class="reference-link" href="../Basic%20Concepts%20and%20Features/Notes/Note%20List/Grid%20View.md">Grid View</a>, but it displays the notes one under the other with the content being expandable/collapsible, but also works recursively.
* <a class="reference-link" href="Collections/Grid%20View.md">Grid View</a> which is the default presentation method for child notes (see <a class="reference-link" href="../Basic%20Concepts%20and%20Features/Notes/Note%20List.md">Note List</a>), where the notes are displayed as tiles with their title and content being visible.
* <a class="reference-link" href="Collections/List%20View.md">List View</a> is similar to <a class="reference-link" href="Collections/Grid%20View.md">Grid View</a>, but it displays the notes one under the other with the content being expandable/collapsible, but also works recursively.
More specialized collections were introduced, such as the:
* <a class="reference-link" href="../Basic%20Concepts%20and%20Features/Notes/Note%20List/Calendar%20View.md">Calendar View</a> which displays a week, month or year calendar with the notes being shown as events. New events can be added easily by dragging across the calendar.
* <a class="reference-link" href="../Basic%20Concepts%20and%20Features/Notes/Note%20List/Geo%20Map%20View.md">Geo Map View</a> which displays a geographical map in which the notes are represented as markers/pins on the map. New events can be easily added by pointing on the map.
* <a class="reference-link" href="../Basic%20Concepts%20and%20Features/Notes/Note%20List/Table%20View.md">Table View</a> displays each note as a row in a table, with <a class="reference-link" href="../Advanced%20Usage/Attributes/Promoted%20Attributes.md">Promoted Attributes</a> being shown as well. This makes it easy to visualize attributes of notes, as well as making them easily editable.
* <a class="reference-link" href="Collections/Calendar%20View.md">Calendar View</a> which displays a week, month or year calendar with the notes being shown as events. New events can be added easily by dragging across the calendar.
* <a class="reference-link" href="Collections/Geo%20Map%20View.md">Geo Map View</a> which displays a geographical map in which the notes are represented as markers/pins on the map. New events can be easily added by pointing on the map.
* <a class="reference-link" href="Collections/Table%20View.md">Table View</a> displays each note as a row in a table, with <a class="reference-link" href="../Advanced%20Usage/Attributes/Promoted%20Attributes.md">Promoted Attributes</a> being shown as well. This makes it easy to visualize attributes of notes, as well as making them easily editable.
For a quick presentation of all the supported view types, see the child notes of this help page, including screenshots.

Some files were not shown because too many files have changed in this diff Show More