Joe Hou2k downloadsHighlight timestamps in your Journal section, capture quick notes, images, and audio from a sidebar, dictate with real-time speech-to-text, and review your year with a heatmap.
Catch every spark, before it fades.
An Obsidian plugin for journaling — built around two ideas:
Under the hood it highlights HH:MM timestamps inside a designated Memo section, rolls up everything you've written into a yearly heatmap, and plots every geo-tagged memo on an offline world map — so you can look back on a whole year, or a whole map, at a glance.
Available in 简体中文, 繁體中文, English, and 日本語, with place-name lookups that follow your selected language.
Originally forked from zhaohongxuan/journal-partner. Thanks to the original author for the timestamp-highlighting core.
## Memo section — pill badges in Source, Live Preview, and Reading view, with customizable colors and an optional read-only mode## Memo[Name](geo:lat,lon) links#tag and every geo-tagged memo grouped for review, with rename / merge / delete for tagsRequires Obsidian's built-in Daily Notes core plugin.
Install from Settings → Community plugins → Browse → "Spark Memo".
Manual install: download main.js, manifest.json, and styles.css from the latest GitHub Release into <vault>/.obsidian/plugins/spark-memo/, then enable it in Settings → Community plugins.
Cmd+Enter on macOS / Ctrl+Enter on Windows and Linux while the input is focused. Plain Enter inserts a new line. The memo is written to today's daily note as - HH:MM text. A keycap hint appears beside submit on desktop only while hovering over the input card and when space permits.Search / Tags / Locations / Stats tabs to browse across days — Locations opens on the world map, with the city list one click awayEmpty capture inputs show one complete, randomly selected localized hint per visit. Opening or revealing the panel, or returning to Capture from another tab, selects a hint; the same hint may be selected again. Hints stay still while the panel remains open, including after saving or cancelling an edit, with no typing animation, rotation or decorative blinking cursor. Focusing the input hides the hint; typed text is never replaced.
Zen mode is desktop-only. The button beside @ keeps only the composer visible and centered in the panel, including after saving. The composer keeps its normal size; short panels scroll instead of clipping its controls. Entering and exiting uses a short translation and crossfade into a read-only offline map background with existing location dots, without counts or map interactions. The map and dots drift left slowly in a seamless loop while the composer stays fixed and opaque. Background motion pauses when Zen is off, the pane/app is hidden, or reduced motion is enabled. Reopening remembered Zen skips the transition; reduced-motion preferences disable it. Hover over the input card to reveal the entry button. Exit using the same button, Esc, or the top-right X. The X appears over the map when the pointer is outside the composer, or when the button receives keyboard focus. Suggestions consume the first Esc, and the last Zen state is remembered when reopening the panel or restarting Obsidian. Phones and tablets keep the normal interface and ignore the synced Zen preference without resetting it.
MIT