mirror of
https://github.com/hearth-code/hearthcode-obsidian.git
synced 2026-07-22 04:50:27 +00:00
Compare commits
8 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4246c4f6f1 | ||
|
|
0d6006a974 | ||
|
|
761500494b | ||
|
|
9b233a274e | ||
|
|
08e95838af | ||
|
|
2b2aa47594 | ||
|
|
fac4b02ecf | ||
|
|
05e97644ab |
6 changed files with 70 additions and 52 deletions
28
README.md
28
README.md
|
|
@ -1,11 +1,23 @@
|
||||||
# HearthCode for Obsidian
|
# HearthCode for Obsidian
|
||||||
|
|
||||||
Warm, calm dark and light themes for [Obsidian](https://obsidian.md), built from the HearthCode color system. The same color language applied to functional Markdown — typed callouts, task states, layered lists, flat code and quote surfaces, and tag pills, kept consistent across edit and reading views.
|
Warm, calm Dark and Light themes for [Obsidian](https://obsidian.md), designed to make structured notes easy to scan without making the page noisy.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
- **Modes:** Dark and Light
|
## Built for notes with structure
|
||||||
- **Homepage:** https://theme.hearthcode.dev
|
|
||||||
|
- Typed callouts keep notes, tips, questions, warnings, and danger states distinct.
|
||||||
|
- Task states, layered list markers, tag pills, code blocks, and quotes form a clear reading hierarchy.
|
||||||
|
- Edit and reading views share the same treatment, so a note does not change character when you switch modes.
|
||||||
|
- Dark and Light use the same semantic color language.
|
||||||
|
|
||||||
|
## Make it yours with Style Settings
|
||||||
|
|
||||||
|
With the optional **Style Settings** plugin, you can tune the parts that should be personal without breaking the calibrated palette:
|
||||||
|
|
||||||
|
- Typography: monospace notes, upright code-comment italics, and readable line length.
|
||||||
|
- Callout intensity: Quiet, Medium, or Bold.
|
||||||
|
- Accent: Moss, Amber, or Slate, each checked for text contrast.
|
||||||
|
|
||||||
## Install
|
## Install
|
||||||
|
|
||||||
|
|
@ -20,13 +32,11 @@ Warm, calm dark and light themes for [Obsidian](https://obsidian.md), built from
|
||||||
2. Copy them into `<your-vault>/.obsidian/themes/HearthCode/`.
|
2. Copy them into `<your-vault>/.obsidian/themes/HearthCode/`.
|
||||||
3. In **Settings → Appearance → Themes**, select **HearthCode**.
|
3. In **Settings → Appearance → Themes**, select **HearthCode**.
|
||||||
|
|
||||||
## About this repository
|
Homepage and editor-theme previews: <https://theme.hearthcode.dev>
|
||||||
|
|
||||||
This repo is the Obsidian **publish target** for HearthCode. Everything here
|
## Source and support
|
||||||
(`manifest.json`, `theme.css`, `versions.json`, `screenshot.png`, `hero.png`,
|
|
||||||
and this `README.md`) is generated and synced from the source-of-truth monorepo,
|
This repository is the generated Obsidian publish target. Source, issues, and changes live in [hearth-code/HearthTheme](https://github.com/hearth-code/HearthTheme).
|
||||||
[hearth-code/HearthTheme](https://github.com/hearth-code/HearthTheme) — don't
|
|
||||||
edit it here. Please file issues and changes against that repository.
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
|
|
||||||
BIN
hero.png
BIN
hero.png
Binary file not shown.
|
Before Width: | Height: | Size: 152 KiB After Width: | Height: | Size: 152 KiB |
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "HearthCode",
|
"name": "HearthCode",
|
||||||
"version": "3.4.0",
|
"version": "3.7.4",
|
||||||
"minAppVersion": "1.0.0",
|
"minAppVersion": "1.0.0",
|
||||||
"author": "HearthCode",
|
"author": "HearthCode",
|
||||||
"authorUrl": "https://theme.hearthcode.dev"
|
"authorUrl": "https://theme.hearthcode.dev"
|
||||||
|
|
|
||||||
BIN
screenshot.png
BIN
screenshot.png
Binary file not shown.
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
82
theme.css
82
theme.css
|
|
@ -93,7 +93,7 @@ settings:
|
||||||
--callout-content-padding: 0.48em 0 0;
|
--callout-content-padding: 0.48em 0 0;
|
||||||
--callout-default: 104, 173, 193;
|
--callout-default: 104, 173, 193;
|
||||||
--callout-error: 224, 108, 94;
|
--callout-error: 224, 108, 94;
|
||||||
--callout-example: 136, 162, 201;
|
--callout-example: 140, 161, 199;
|
||||||
--callout-fail: 224, 108, 94;
|
--callout-fail: 224, 108, 94;
|
||||||
--callout-info: 104, 173, 193;
|
--callout-info: 104, 173, 193;
|
||||||
--callout-padding: 0.72em 0.9em;
|
--callout-padding: 0.72em 0.9em;
|
||||||
|
|
@ -116,7 +116,7 @@ settings:
|
||||||
--checklist-done-decoration: line-through;
|
--checklist-done-decoration: line-through;
|
||||||
--code-background: var(--hearth-md-code-surface);
|
--code-background: var(--hearth-md-code-surface);
|
||||||
--code-comment: #817566;
|
--code-comment: #817566;
|
||||||
--code-function: #91cf72;
|
--code-function: #93ce75;
|
||||||
--code-important: #68adc1;
|
--code-important: #68adc1;
|
||||||
--code-keyword: #d4b84f;
|
--code-keyword: #d4b84f;
|
||||||
--code-normal: #c3bfb9;
|
--code-normal: #c3bfb9;
|
||||||
|
|
@ -126,7 +126,7 @@ settings:
|
||||||
--code-tag: #c5bf56;
|
--code-tag: #c5bf56;
|
||||||
--code-value: #77a7d2;
|
--code-value: #77a7d2;
|
||||||
--h1-color: #d4b84f;
|
--h1-color: #d4b84f;
|
||||||
--h2-color: #91cf72;
|
--h2-color: #93ce75;
|
||||||
--h3-color: #8ebb7f;
|
--h3-color: #8ebb7f;
|
||||||
--h4-color: #caa46c;
|
--h4-color: #caa46c;
|
||||||
--h5-color: #77a7d2;
|
--h5-color: #77a7d2;
|
||||||
|
|
@ -152,7 +152,7 @@ settings:
|
||||||
--hearth-md-code-surface: rgb(38 39 35 / 0.9);
|
--hearth-md-code-surface: rgb(38 39 35 / 0.9);
|
||||||
--hearth-md-inline-code: #9bb0bf;
|
--hearth-md-inline-code: #9bb0bf;
|
||||||
--hearth-md-list-level-1: #858b6e;
|
--hearth-md-list-level-1: #858b6e;
|
||||||
--hearth-md-list-level-2: #858e69;
|
--hearth-md-list-level-2: #868e6a;
|
||||||
--hearth-md-list-level-3: #7e8486;
|
--hearth-md-list-level-3: #7e8486;
|
||||||
--hearth-md-surface: rgb(37 38 34 / 0.88);
|
--hearth-md-surface: rgb(37 38 34 / 0.88);
|
||||||
--hearth-md-surface-muted: rgb(34 35 32 / 0.72);
|
--hearth-md-surface-muted: rgb(34 35 32 / 0.72);
|
||||||
|
|
@ -191,14 +191,14 @@ settings:
|
||||||
--hr-color: rgb(60 58 50 / 0.7);
|
--hr-color: rgb(60 58 50 / 0.7);
|
||||||
--interactive-accent: #8bb49e;
|
--interactive-accent: #8bb49e;
|
||||||
--interactive-accent-hover: #98b69f;
|
--interactive-accent-hover: #98b69f;
|
||||||
--interactive-hover: #2a2722;
|
--interactive-hover: #2a2723;
|
||||||
--interactive-normal: rgb(60 58 50 / 0.2);
|
--interactive-normal: rgb(60 58 50 / 0.2);
|
||||||
--link-color: var(--interactive-accent);
|
--link-color: var(--interactive-accent);
|
||||||
--link-color-hover: var(--interactive-accent-hover);
|
--link-color-hover: var(--interactive-accent-hover);
|
||||||
--link-unresolved-color: #938461;
|
--link-unresolved-color: #938461;
|
||||||
--list-marker-color: #858b6e;
|
--list-marker-color: #858b6e;
|
||||||
--list-marker-color-collapsed: var(--interactive-accent);
|
--list-marker-color-collapsed: var(--interactive-accent);
|
||||||
--list-marker-color-hover: #858e69;
|
--list-marker-color-hover: #868e6a;
|
||||||
--list-spacing: 0.14em;
|
--list-spacing: 0.14em;
|
||||||
--scrollbar-active-thumb-bg: rgb(95 88 76 / 0.85);
|
--scrollbar-active-thumb-bg: rgb(95 88 76 / 0.85);
|
||||||
--scrollbar-bg: transparent;
|
--scrollbar-bg: transparent;
|
||||||
|
|
@ -762,15 +762,15 @@ settings:
|
||||||
--background-modifier-form-field: rgb(195 192 181 / 0.22);
|
--background-modifier-form-field: rgb(195 192 181 / 0.22);
|
||||||
--background-modifier-hover: #c7c4b8;
|
--background-modifier-hover: #c7c4b8;
|
||||||
--background-modifier-message: rgb(72 106 89 / 0.18);
|
--background-modifier-message: rgb(72 106 89 / 0.18);
|
||||||
--background-modifier-success: rgb(117 104 35 / 0.24);
|
--background-modifier-success: rgb(126 90 42 / 0.24);
|
||||||
--background-primary: #e7e5d8;
|
--background-primary: #e7e5d8;
|
||||||
--background-primary-alt: #cecabe;
|
--background-primary-alt: #cecabe;
|
||||||
--background-secondary: #d4d1c4;
|
--background-secondary: #d4d1c4;
|
||||||
--background-secondary-alt: #bdb9ad;
|
--background-secondary-alt: #bdb9ad;
|
||||||
--blockquote-background-color: var(--hearth-md-surface-muted);
|
--blockquote-background-color: var(--hearth-md-surface-muted);
|
||||||
--blockquote-border-color: rgb(76 113 67 / 0.68);
|
--blockquote-border-color: rgb(84 113 73 / 0.68);
|
||||||
--blockquote-border-thickness: 3px;
|
--blockquote-border-thickness: 3px;
|
||||||
--blockquote-color: #605950;
|
--blockquote-color: #665d54;
|
||||||
--callout-border-opacity: 0.5;
|
--callout-border-opacity: 0.5;
|
||||||
--callout-border-width: 1px;
|
--callout-border-width: 1px;
|
||||||
--callout-bug: 186, 81, 70;
|
--callout-bug: 186, 81, 70;
|
||||||
|
|
@ -778,44 +778,44 @@ settings:
|
||||||
--callout-content-padding: 0.48em 0 0;
|
--callout-content-padding: 0.48em 0 0;
|
||||||
--callout-default: 35, 114, 150;
|
--callout-default: 35, 114, 150;
|
||||||
--callout-error: 186, 81, 70;
|
--callout-error: 186, 81, 70;
|
||||||
--callout-example: 74, 108, 159;
|
--callout-example: 58, 102, 155;
|
||||||
--callout-fail: 186, 81, 70;
|
--callout-fail: 186, 81, 70;
|
||||||
--callout-info: 35, 114, 150;
|
--callout-info: 35, 114, 150;
|
||||||
--callout-padding: 0.72em 0.9em;
|
--callout-padding: 0.72em 0.9em;
|
||||||
--callout-question: 164, 105, 44;
|
--callout-question: 164, 105, 44;
|
||||||
--callout-quote: 135, 129, 119;
|
--callout-quote: 142, 134, 123;
|
||||||
--callout-radius: 8px;
|
--callout-radius: 8px;
|
||||||
--callout-success: 57, 118, 37;
|
--callout-success: 57, 118, 37;
|
||||||
--callout-tip: 57, 118, 37;
|
--callout-tip: 57, 118, 37;
|
||||||
--callout-todo: 59, 109, 111;
|
--callout-todo: 59, 109, 111;
|
||||||
--callout-warning: 157, 113, 36;
|
--callout-warning: 157, 113, 36;
|
||||||
--checkbox-border-color: rgb(100 112 87 / 0.68);
|
--checkbox-border-color: rgb(109 116 92 / 0.68);
|
||||||
--checkbox-border-color-hover: rgb(91 110 88 / 0.86);
|
--checkbox-border-color-hover: rgb(97 113 91 / 0.86);
|
||||||
--checkbox-color: #457d31;
|
--checkbox-color: #457d31;
|
||||||
--checkbox-color-hover: #445f50;
|
--checkbox-color-hover: #445f50;
|
||||||
--checkbox-margin-inline-start: 0;
|
--checkbox-margin-inline-start: 0;
|
||||||
--checkbox-marker-color: #faf5ef;
|
--checkbox-marker-color: #faf5ef;
|
||||||
--checkbox-radius: 4px;
|
--checkbox-radius: 4px;
|
||||||
--checkbox-size: 15px;
|
--checkbox-size: 15px;
|
||||||
--checklist-done-color: #676058;
|
--checklist-done-color: #6f665b;
|
||||||
--checklist-done-decoration: line-through;
|
--checklist-done-decoration: line-through;
|
||||||
--code-background: var(--hearth-md-code-surface);
|
--code-background: var(--hearth-md-code-surface);
|
||||||
--code-comment: #766f65;
|
--code-comment: #7f766a;
|
||||||
--code-function: #397626;
|
--code-function: #3e752b;
|
||||||
--code-important: #237296;
|
--code-important: #237296;
|
||||||
--code-keyword: #83640f;
|
--code-keyword: #83640f;
|
||||||
--code-normal: #46423d;
|
--code-normal: #46423d;
|
||||||
--code-operator: #66635d;
|
--code-operator: #5f5c57;
|
||||||
--code-property: #3f7138;
|
--code-property: #46703f;
|
||||||
--code-string: #756823;
|
--code-string: #7e5a2a;
|
||||||
--code-tag: #7f7d2e;
|
--code-tag: #5f6b24;
|
||||||
--code-value: #346fa8;
|
--code-value: #1768a6;
|
||||||
--h1-color: #83640f;
|
--h1-color: #83640f;
|
||||||
--h2-color: #397626;
|
--h2-color: #3e752b;
|
||||||
--h3-color: #3f7138;
|
--h3-color: #46703f;
|
||||||
--h4-color: #756823;
|
--h4-color: #7e5a2a;
|
||||||
--h5-color: #346fa8;
|
--h5-color: #1768a6;
|
||||||
--h6-color: #5c554d;
|
--h6-color: #615950;
|
||||||
--hearth-accent-hover: #bb7e16;
|
--hearth-accent-hover: #bb7e16;
|
||||||
--hearth-bracket-bright: #855a70;
|
--hearth-bracket-bright: #855a70;
|
||||||
--hearth-bracket-cool: #237296;
|
--hearth-bracket-cool: #237296;
|
||||||
|
|
@ -831,14 +831,14 @@ settings:
|
||||||
--hearth-guide-active: #8b7d63;
|
--hearth-guide-active: #8b7d63;
|
||||||
--hearth-guide-ink: #7c5f34;
|
--hearth-guide-ink: #7c5f34;
|
||||||
--hearth-md-block-gap: 1em;
|
--hearth-md-block-gap: 1em;
|
||||||
--hearth-md-border: rgb(178 174 163 / 0.54);
|
--hearth-md-border: rgb(180 176 165 / 0.54);
|
||||||
--hearth-md-border-soft: rgb(178 174 163 / 0.28);
|
--hearth-md-border-soft: rgb(180 176 165 / 0.28);
|
||||||
--hearth-md-code-border: rgb(178 174 163 / 0.42);
|
--hearth-md-code-border: rgb(180 176 165 / 0.42);
|
||||||
--hearth-md-code-surface: rgb(209 205 193 / 0.9);
|
--hearth-md-code-surface: rgb(209 205 193 / 0.9);
|
||||||
--hearth-md-inline-code: #345575;
|
--hearth-md-inline-code: #235074;
|
||||||
--hearth-md-list-level-1: #647057;
|
--hearth-md-list-level-1: #6d745c;
|
||||||
--hearth-md-list-level-2: #657153;
|
--hearth-md-list-level-2: #6d7658;
|
||||||
--hearth-md-list-level-3: #626f79;
|
--hearth-md-list-level-3: #60727c;
|
||||||
--hearth-md-surface: rgb(211 207 195 / 0.88);
|
--hearth-md-surface: rgb(211 207 195 / 0.88);
|
||||||
--hearth-md-surface-muted: rgb(217 213 201 / 0.72);
|
--hearth-md-surface-muted: rgb(217 213 201 / 0.72);
|
||||||
--hearth-nav-active-ink: #2c2722;
|
--hearth-nav-active-ink: #2c2722;
|
||||||
|
|
@ -847,8 +847,8 @@ settings:
|
||||||
--hearth-task-background: rgb(215 211 199 / 0.9);
|
--hearth-task-background: rgb(215 211 199 / 0.9);
|
||||||
--hearth-task-cancelled: #ba5146;
|
--hearth-task-cancelled: #ba5146;
|
||||||
--hearth-task-cancelled-text: #7c4038;
|
--hearth-task-cancelled-text: #7c4038;
|
||||||
--hearth-task-deferred: #6b645b;
|
--hearth-task-deferred: #736a5f;
|
||||||
--hearth-task-deferred-text: #605950;
|
--hearth-task-deferred-text: #665d54;
|
||||||
--hearth-task-done: #457d31;
|
--hearth-task-done: #457d31;
|
||||||
--hearth-task-important: #9d7124;
|
--hearth-task-important: #9d7124;
|
||||||
--hearth-task-important-text: #735626;
|
--hearth-task-important-text: #735626;
|
||||||
|
|
@ -876,18 +876,18 @@ settings:
|
||||||
--hr-color: rgb(195 192 181 / 0.7);
|
--hr-color: rgb(195 192 181 / 0.7);
|
||||||
--interactive-accent: #486a59;
|
--interactive-accent: #486a59;
|
||||||
--interactive-accent-hover: #445f50;
|
--interactive-accent-hover: #445f50;
|
||||||
--interactive-hover: #cac7b9;
|
--interactive-hover: #cac7bb;
|
||||||
--interactive-normal: rgb(195 192 181 / 0.2);
|
--interactive-normal: rgb(195 192 181 / 0.2);
|
||||||
--link-color: var(--interactive-accent);
|
--link-color: var(--interactive-accent);
|
||||||
--link-color-hover: var(--interactive-accent-hover);
|
--link-color-hover: var(--interactive-accent-hover);
|
||||||
--link-unresolved-color: #796d52;
|
--link-unresolved-color: #807256;
|
||||||
--list-marker-color: #647057;
|
--list-marker-color: #6d745c;
|
||||||
--list-marker-color-collapsed: var(--interactive-accent);
|
--list-marker-color-collapsed: var(--interactive-accent);
|
||||||
--list-marker-color-hover: #657153;
|
--list-marker-color-hover: #6d7658;
|
||||||
--list-spacing: 0.14em;
|
--list-spacing: 0.14em;
|
||||||
--scrollbar-active-thumb-bg: rgb(157 152 141 / 0.85);
|
--scrollbar-active-thumb-bg: rgb(161 155 144 / 0.85);
|
||||||
--scrollbar-bg: transparent;
|
--scrollbar-bg: transparent;
|
||||||
--scrollbar-thumb-bg: rgb(172 168 157 / 0.5);
|
--scrollbar-thumb-bg: rgb(175 170 159 / 0.5);
|
||||||
--table-border-color: rgb(195 192 181 / 0.58);
|
--table-border-color: rgb(195 192 181 / 0.58);
|
||||||
--table-header-border-color: rgb(195 192 181 / 0.76);
|
--table-header-border-color: rgb(195 192 181 / 0.76);
|
||||||
--tag-background: rgb(35 114 150 / 0.14);
|
--tag-background: rgb(35 114 150 / 0.14);
|
||||||
|
|
|
||||||
|
|
@ -33,5 +33,13 @@
|
||||||
"3.1.4": "1.0.0",
|
"3.1.4": "1.0.0",
|
||||||
"3.2.0": "1.0.0",
|
"3.2.0": "1.0.0",
|
||||||
"3.3.0": "1.0.0",
|
"3.3.0": "1.0.0",
|
||||||
"3.4.0": "1.0.0"
|
"3.4.0": "1.0.0",
|
||||||
|
"3.4.1": "1.0.0",
|
||||||
|
"3.5.0": "1.0.0",
|
||||||
|
"3.6.0": "1.0.0",
|
||||||
|
"3.7.0": "1.0.0",
|
||||||
|
"3.7.1": "1.0.0",
|
||||||
|
"3.7.2": "1.0.0",
|
||||||
|
"3.7.3": "1.0.0",
|
||||||
|
"3.7.4": "1.0.0"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue