LinneaCai131 downloadsA Markdown-first mood calendar with custom SVG faces, tag/frontmatter input, and readable quarter-by-quarter year layout.
Mood Quarter Calendar is a lightweight Obsidian plugin for people who want a yearly mood tracker that still feels like a journal. It reads mood from your daily notes and displays custom SVG mood faces in a readable quarter-by-quarter calendar.
Instead of another dense heatmap or a separate mood database, this plugin keeps your mood data in Markdown: frontmatter, inline fields, or tags such as #mood/happy.

#mood/happy, #心情/开心, mood: happy, and mood:: happy.Existing Obsidian plugins can track mood, render heatmaps, or help insert emotion words. Mood Quarter Calendar focuses on a narrower gap:
Show the emotional texture of a year at a glance, using readable calendar structure and expressive but consistent visual symbols.
It is not trying to be a full diary system, AI coach, or analytics suite. It is a small visual layer over the journal you already write.
The plugin supports these mood keys:

| Key | Meaning |
|---|---|
happy |
开心 |
calm |
平静 |
sad |
难过 |
angry |
生气 |
anxious |
焦虑 |
tired |
疲惫 |
excited |
兴奋 |
numb |
麻木 / 没感觉 |
These faces are rendered directly by the plugin, so they look consistent across platforms and do not depend on Apple, Windows, or Android emoji fonts.
Add a code block to any note:
```mood-quarter-calendar
year: 2026
```
The plugin scans daily notes whose path contains 02_Daily and whose filename is YYYY-MM-DD.md.
You can record mood in frontmatter:
---
mood: happy
mood_detail: 今天整体很稳定,完成了重要任务,也有一点被看见的开心。
---
You can record mood with an inline field:
mood:: happy
mood_detail:: 今天整体很稳定,完成了重要任务,也有一点被看见的开心。
You can also record mood with tags in frontmatter or the note body:
---
tags: [mood/happy]
---
#mood/happy
#心情/开心
Mood details are optional and capped at 100 characters in the sticky note. Supported detail fields are mood_detail, mood_note, mood_detail_cn, and Chinese inline fields such as 心情详情:: 今天…….
The command Mood Quarter Calendar: Record today's mood opens a mood picker and writes both mood: <key> and mood/<key> by default. Clicking a day that already has a mood opens its sticky note instead of the picker.
Daily folder segment: the folder name used to identify daily notes. Default: 02_Daily.Mood property: the frontmatter property used for mood. Default: mood.Mood detail properties: comma-separated frontmatter or inline fields used for the sticky note. Default: mood_detail,mood_note,mood_detail_cn.Daily note path pattern: used when creating a missing daily note.Default year: optional fallback year.Also write mood tag: writes a mood/<key> tag when using the picker.Clicking a recorded mood face opens a square sticky note. The note displays the mood face, date, mood label, and a short detail pulled from your daily note.

Mood Quarter Calendar only reads and writes local Markdown files in your Obsidian vault. It does not send data to any external service.
Download the latest release assets:
manifest.jsonmain.jsstyles.cssPlace them in:
<your-vault>/.obsidian/plugins/mood-quarter-calendar/
Then reload Obsidian and enable the plugin in Community Plugins.
For Obsidian community plugin releases, attach these files to each GitHub release:
main.jsmanifest.jsonstyles.cssThe release tag must match the version in manifest.json.
MIT