+## ⏬ Download
+- [Latest release](https://github.com/TriliumNext/Trilium/releases/latest) – stable version, recommended for most users.
+- [Nightly build](https://github.com/TriliumNext/Trilium/releases/tag/nightly) – unstable development version, updated daily with the latest features and fixes.
+
## 📚 Documentation
**Visit our comprehensive documentation at [docs.triliumnotes.org](https://docs.triliumnotes.org/)**
diff --git a/apps/client/package.json b/apps/client/package.json
index 4459d2cb2..dceb6e8b8 100644
--- a/apps/client/package.json
+++ b/apps/client/package.json
@@ -35,6 +35,7 @@
"autocomplete.js": "0.38.1",
"bootstrap": "5.3.8",
"boxicons": "2.1.4",
+ "color": "5.0.2",
"dayjs": "1.11.18",
"dayjs-plugin-utc": "0.1.2",
"debounce": "2.2.0",
diff --git a/apps/client/src/services/css_class_manager.ts b/apps/client/src/services/css_class_manager.ts
index f5d2e9649..fc839c9b1 100644
--- a/apps/client/src/services/css_class_manager.ts
+++ b/apps/client/src/services/css_class_manager.ts
@@ -1,21 +1,40 @@
+import {readCssVar} from "../utils/css-var";
+import Color, { ColorInstance } from "color";
+
const registeredClasses = new Set| Label | Description |
|---|---|
disableVersioning | Disables automatic creation of Note Revisions for a particular note. Useful for e.g. large, but unimportant notes - e.g. large JS libraries used for scripting. |
versioningLimit | Limits the maximum number of Note Revisions for a particular note, overriding the global settings. |
calendarRoot | Marks the note which should be used as root for Day Notes. Only one should be marked as such. |
archived | Hides notes from default search results and dialogs. Archived notes can optionally be hidden in the Note Tree. |
excludeFromExport | Excludes this note and its children when exporting. |
run, runOnInstance, runAtHour | See Events. |
disableInclusion | Scripts with this label won't be included into parent script execution. |
sorted | Keeps child notes sorted by title alphabetically. When given a value, it will sort by the value of another label instead. If one of the child notes doesn't have the specified label, the title will be used for them instead. |
sortDirection | If
|
sortFoldersFirst | If sorted is applied, folders (notes with children) will be sorted as a group at the top, and the rest will be sorted. |
top | If sorted is applied to the parent note, keeps given note on top in its parent. |
hidePromotedAttributes | Hide Promoted Attributes on this note. Generally useful when defining inherited attributes, but the parent note doesn't need them. |
readOnly | Marks a note to be always be read-only, if it's a supported note (text, code, mermaid). |
autoReadOnlyDisabled | Disables automatic read-only mode for the given note. |
appCss | Marks CSS notes which are loaded into the Trilium application and can thus be used to modify Trilium's looks. See Custom app-wide CSS for more info. |
appTheme | Marks CSS notes which are full Trilium themes and are thus available in Trilium options. See Theme development for more information. |
appThemeBase | Set to next, next-light, or next-dark to use the corresponding TriliumNext theme (auto, light or dark) as the base for a custom theme, instead of the legacy one. See Customize the Next theme for more information. |
cssClass | Value of this label is then added as CSS class to the node representing given note in the Note Tree. This can be useful for advanced theming. Can be used in template notes. |
iconClass | value of this label is added as a CSS class to the icon on the tree which can help visually distinguish the notes in the tree. Example might be bx bx-home - icons are taken from boxicons. Can be used in template notes. |
pageSize | Specifies the number of items per page in Note List. |
customRequestHandler | See Custom Request Handler. |
customResourceProvider | See Custom Resource Providers. |
widget | Marks this note as a custom widget which will be added to the Trilium component tree. See Custom Widgets for more information. |
searchHome | New search notes will be created as children of this note (see Saved Search). |
workspace and related attributes | See Workspaces. |
inbox | default inbox location for new notes - when you create a note using new note button in the sidebar, notes will be created as child notes in the note marked as with #inbox label. |
sqlConsoleHome | Default location of SQL Console notes |
bookmarked | Indicates this note is a bookmark. |
bookmarkFolder | Note with this label will appear in bookmarks as folder (allowing access to its children). See Bookmarks for more information. |
share* | See the attribute reference in Sharing. |
displayRelations, hideRelations | Comma delimited names of relations which should be displayed/hidden in a Relation Map (both the note type and the Note Map (Link map, Tree map) general functionality). |
titleTemplate | Default title of notes created as children of this note. This value is evaluated as a JavaScript string and thus can be enriched with dynamic content via the injected Examples:
See Default Note Title for more info. |
template | This note will appear in the selection of available template when creating new note. See Templates for more information. |
toc | Controls the display of the Table of contents for a given note. #toc or #toc=show to always display the table of contents, #toc=false to always hide it. |
color | defines color of the note in note tree, links etc. Use any valid CSS color value like 'red' or #a13d5f |
keyboardShortcut | Defines a keyboard shortcut which will immediately jump to this note. Example: 'ctrl+alt+e'. Requires frontend reload for the change to take effect. |
keepCurrentHoisting | Opening this link won't change hoisting even if the note is not displayable in the current hoisted subtree. |
executeButton | Title of the button which will execute the current code note |
executeDescription | Longer description of the current code note displayed together with the execute button |
excludeFromNoteMap | Notes with this label will be hidden from the Note Map. |
newNotesOnTop | New notes will be created at the top of the parent note, not on the bottom. |
hideHighlightWidget | Hides the Highlights list widget |
hideChildrenOverview | Hides the Note List for that particular note. |
printLandscape | When exporting to PDF, changes the orientation of the page to landscape instead of portrait. |
printPageSize | When exporting to PDF, changes the size of the page. Supported values: A0, A1, A2, A3, A4, A5, A6, Legal, Letter, Tabloid, Ledger. |
geolocation | Indicates the latitude and longitude of a note, to be displayed in a Geo Map. |
calendar:* | Defines specific options for the Calendar View. |
viewType | Sets the view of child notes (e.g. grid or list). See Note List for more information. |
| Label | Description |
|---|---|
disableVersioning | Disables automatic creation of Note Revisions for a particular note. Useful for e.g. large, but unimportant notes - e.g. large JS libraries used for scripting. |
versioningLimit | Limits the maximum number of Note Revisions for a particular note, overriding the global settings. |
calendarRoot | Marks the note which should be used as root for Day Notes. Only one should be marked as such. |
archived | Hides notes from default search results and dialogs. Archived notes can optionally be hidden in the Note Tree. |
excludeFromExport | Excludes this note and its children when exporting. |
run, runOnInstance, runAtHour | See Events. |
disableInclusion | Scripts with this label won't be included into parent script execution. |
sorted | Keeps child notes sorted by title alphabetically. When given a value, it will sort by the value of another label instead. If one of the child notes doesn't have the specified label, the title will be used for them instead. |
sortDirection | If
|
sortFoldersFirst | If sorted is applied, folders (notes with children) will be sorted as a group at the top, and the rest will be sorted. |
top | If sorted is applied to the parent note, keeps given note on top in its parent. |
hidePromotedAttributes | Hide Promoted Attributes on this note. Generally useful when defining inherited attributes, but the parent note doesn't need them. |
readOnly | Marks a note to be always be read-only, if it's a supported note (text, code, mermaid). |
autoReadOnlyDisabled | Disables automatic read-only mode for the given note. |
appCss | Marks CSS notes which are loaded into the Trilium application and can thus be used to modify Trilium's looks. See Custom app-wide CSS for more info. |
appTheme | Marks CSS notes which are full Trilium themes and are thus available in Trilium options. See Theme development for more information. |
appThemeBase | Set to next, next-light, or next-dark to use the corresponding TriliumNext theme (auto, light or dark) as the base for a custom theme, instead of the legacy one. See Customize the Next theme for more information. |
cssClass | Value of this label is then added as CSS class to the node representing given note in the Note Tree. This can be useful for advanced theming. Can be used in template notes. |
iconClass | value of this label is added as a CSS class to the icon on the tree which can help visually distinguish the notes in the tree. Example might be bx bx-home - icons are taken from boxicons. Can be used in template notes. |
pageSize | Specifies the number of items per page in Note List. |
customRequestHandler | See Custom Request Handler. |
customResourceProvider | See Custom Resource Providers. |
widget | Marks this note as a custom widget which will be added to the Trilium component tree. See Custom Widgets for more information. |
searchHome | New search notes will be created as children of this note (see Saved Search). |
workspace and related attributes | See Workspaces. |
inbox | default inbox location for new notes - when you create a note using new note button in the sidebar, notes will be created as child notes in the note marked as with #inbox label. |
sqlConsoleHome | Default location of SQL Console notes |
bookmarked | Indicates this note is a bookmark. |
bookmarkFolder | Note with this label will appear in bookmarks as folder (allowing access to its children). See Bookmarks for more information. |
share* | See the attribute reference in Sharing. |
displayRelations, hideRelations | Comma delimited names of relations which should be displayed/hidden in a Relation Map (both the note type and the Note Map (Link map, Tree map) general functionality). |
titleTemplate | Default title of notes created as children of this note. This value is evaluated as a JavaScript string and thus can be enriched with dynamic content via the injected Examples:
See Default Note Title for more info. |
template | This note will appear in the selection of available template when creating new note. See Templates for more information. |
toc | Controls the display of the Table of contents for a given note. #toc or #toc=show to always display the table of contents, #toc=false to always hide it. |
color | defines color of the note in note tree, links etc. Use any valid CSS color value like 'red' or #a13d5f Note: this color may be automatically adjusted when displayed to ensure sufficient contrast with the background. |
keyboardShortcut | Defines a keyboard shortcut which will immediately jump to this note. Example: 'ctrl+alt+e'. Requires frontend reload for the change to take effect. |
keepCurrentHoisting | Opening this link won't change hoisting even if the note is not displayable in the current hoisted subtree. |
executeButton | Title of the button which will execute the current code note |
executeDescription | Longer description of the current code note displayed together with the execute button |
excludeFromNoteMap | Notes with this label will be hidden from the Note Map. |
newNotesOnTop | New notes will be created at the top of the parent note, not on the bottom. |
hideHighlightWidget | Hides the Highlights list widget |
hideChildrenOverview | Hides the Note List for that particular note. |
printLandscape | When exporting to PDF, changes the orientation of the page to landscape instead of portrait. |
printPageSize | When exporting to PDF, changes the size of the page. Supported values: A0, A1, A2, A3, A4, A5, A6, Legal, Letter, Tabloid, Ledger. |
geolocation | Indicates the latitude and longitude of a note, to be displayed in a Geo Map. |
calendar:* | Defines specific options for the Calendar View. |
viewType | Sets the view of child notes (e.g. grid or list). See Note List for more information. |