Greg B3 downloadsA local-first daily journal calendar with Markdown activity and Tally summaries.
Daymark is a calm, local-first journal for Obsidian. It keeps your dated Markdown notes close at hand with Week, Month, and Year calendars, quick capture, and simple Tally summaries—all in one sidebar.
There are no accounts, analytics, or network requests. Your journal stays in ordinary Markdown files inside your vault.

Open Daymark from the ribbon or run Daymark: Open calendar.
Year view brings all twelve months together in a compact activity overview. The selected or open day appears beside its month label, and selecting a month opens it at full size.

Daymark follows your chosen journal folder and date format, including nested paths such as YYYY/MM/YYYY-MM-DD. It does not require Obsidian's Daily Notes plugin or another calendar plugin.
New notes can use a Markdown template with these variables:
{{date}}
{{date:dddd, D MMMM YYYY}}
{{time}}
{{time:HH:mm}}
{{title}}
Run Daymark: Quick log to add a short, timestamped thought to today's note without changing views:
`09:05` — A thought worth keeping
If today's note does not exist, Daymark asks before creating it. Quick Log, Open today’s note, and Go to date can all be assigned shortcuts in Obsidian.
Tally unfolds beneath the calendar and follows the same Week, Month, or Year. It summarizes:
Name each tag after the thing being counted. For example:
- [x] Cycled 14 km #kilometres-cycled
- [x] Greek lesson #language-lessons
This adds 14 to Kilometres cycled. A checked tagged line without a number adds 1, so the second line adds one Language lesson. Tagged lines belong only to their tagged counter; they are not counted a second time under Checked items. Checked items is reserved for ordinary checkbox lines without hashtags.
Photos counts local image embeds in your daily notes, including cover images. Select Save to create a clean Markdown report with an at-a-glance summary and chronological activity and Tally tables for Days, Weeks, or Months. Daymark will not overwrite an ordinary note that happens to share a report filename.

Use Display names in Daymark settings to rename Daily notes, Words, Photos, or any discovered hashtag without changing your notes. For example, Photos can appear as Images, and #running can appear as Kilometres run, in both the sidebar and saved reports. Clearing a name restores Daymark’s automatic one.
You can also choose one additional writing folder for a separate, all-time word count. It never changes journal totals or saved reports.
You can choose your daily-note folder, template, date format, first weekday, recurring-day shading, note covers, calendar totals, Tally display names, and an optional additional writing folder.
Daymark counts journal prose while ignoring frontmatter, code, URLs, images, Markdown list lines, and formatting characters.
manifest.json, main.js, and styles.css from the latest release.<vault>/.obsidian/plugins/daymark/
All three files are required. If styles.css is missing, Daymark will load without its layout and visual styling.
Release assets are built and attested by GitHub Actions. After downloading an asset, you can verify its source with gh attestation verify <file> -R justgregb/obsidian-daymark.
Building Daymark requires Git and Node.js.
git clone https://github.com/justgregb/obsidian-daymark.git
cd obsidian-daymark
npm ci
npm run build
npm test
npm run lint
After the build succeeds, copy main.js, manifest.json, and styles.css into <vault>/.obsidian/plugins/daymark/. Reload Obsidian, then enable Daymark.
Daymark is free and open source. If it makes journaling a little nicer, you can buy me a coffee on Ko-fi. ☕️
Version 0.2.4 is available through Obsidian's Community Plugins directory and as a manual GitHub release.
MIT