pobsiz4k downloadsTurn date-based Markdown notes into yearly, monthly, daily, and 3-day planners with ranges, recurrence, reminders, holidays, and calendar overlays.
Diary turns ordinary Markdown notes into yearly, monthly, daily, and 3-day planner views in Obsidian.
Diary는 Obsidian 볼트의 일반 Markdown 노트를 연간·월간·일간·3일 플래너로 보여주는 커뮤니티 플러그인입니다.
📖 Full documentation: English | Deutsch | Español | Français | 日本語 | 简体中文 | 繁體中文 | 한국어
| Item | Value |
|---|---|
| Plugin ID | diary |
| Version | 1.24.0 |
| Minimum Obsidian version | 1.7.2 |
| Platforms | Desktop and mobile (isDesktopOnly: false) |
| Default language | en |
| Default planner folder | Planner |
1.24.0: Improves UI wording in all eight languages, translates custom calendar validation errors, fixes clipped settings labels on narrow screens, and localizes month–year headings.
1.23.1: Preserves the first entry of legacy color lists for display and palette linking.
1.23.0: Recognizes multiple date formats with one creation default for each note type. Adds named linked palette colors, selective linking of existing notes, and theme/fixed/palette holiday colors.
1.22.0: Shows a fixed six-week monthly grid with adjacent-month dates, notes, events and holidays. Date selection and note creation use the actual selected date, including across year boundaries.
1.21.0: opens the monthly grid from its ribbon icon in the main workspace, consistently with the yearly and monthly list icons. The sidebar remains available through its command. Updates the runtime Moment dependency to a patched version.
1.20.2: fixes mobile sidebar detection so creating or opening notes from the sidebar planner opens a new main workspace tab and preserves the planner.
1.20.1: removes the obsolete pnpm lockfile and declares npm as the package manager so community source reviews install the release dependencies consistently.
1.20.0: opens notes created or selected in the sidebar planner in a new main-area tab, keeping the sidebar planner in place.
1.19.0: moves timed multi-day ranges across dates as one interval in the daily and 3-day planners, with drag previews and protection for ranges with incomplete time fields.
1.18.1: fixes plan note path token handling, reports invalid paths and create failures, and refreshes previews after plan notes change.
1.18.0: adds a Monday-first monthly grid option, clearer weekend shading, and custom yearly and monthly plan note paths.
1.17.9: opens the selected day's summary when a range chip is tapped in the compact monthly grid.
1.17.8: keeps the intended gap below all-day range chips when mobile button heights grow beyond the minimum.
1.17.7: aligns all-day range chips with regular chips on mobile, including horizontal insets, text padding, and vertical spacing.
1.17.6: prevents mobile all-day range bars from overlapping entries and keeps the 00:00 label visible.
1.17.5: fixes iPad all-day clipping and restores readable planner header icons.
1.17.4: removes the mobile all-day CSS lint warning.
1.17.3: fixes clipped and hard-to-scroll all-day entries on mobile daily and 3-day views.
1.17.2: updates transitive dependencies to resolve the security advisory reported for js-yaml.
1.17.1: fixes scrolling and overlapping items in the all-day section of the daily and 3-day planners on mobile, and keeps button icons readable in narrow layouts.
1.17.0: adds a collapsible all-day section with event counts to the daily and 3-day planners, and improves sub-20-minute events with readable compact cards, time tooltips, and collision-aware layout.
Older changes are listed on the Releases page. The 1.23.1 release record covers migration, verification, and the follow-up for issues #4 and #5.
The 1.24.0 release record covers multilingual copy, screen checks, and Community distribution verification.
These screenshots use temporary demo notes for all-day, timed, range, todo, and plan entries. The demo folder was removed after capture.

| Yearly planner | Monthly list planner |
|---|---|
![]() |
![]() |
| Daily timeline | 3-day timeline |
|---|---|
![]() |
![]() |
| Narrow monthly grid | Narrow monthly list |
|---|---|
![]() |
![]() |
12 months × 31 days overview.All, With notes, and Upcoming filters.date_start / date_end metadata.{plannerFolder}/{year}.md and monthly {plannerFolder}/{year}-{month}.md. With empty path overrides, new notes use the monthly or yearly creation default in the planner folder. Nonempty vault-relative path overrides take priority; yearly paths support YYYY and [literal text], while monthly paths also support MM. Existing path templates retain their old interpretation until edited. Preview state persists on desktop and separately on mobile.diary_color_id, diary_color_inherit, color, todo, completed, start_time, end_time, notify_minutes, title, date_start, date_end, and recurrence frontmatter. For range files, date_start + start_time and date_end + end_time define one continuous datetime interval; times remain independent from reminders.webcal:// or https:// .ics feeds, refresh them manually or on an interval, and show events as read-only chips/ranges. Select an external event only when you want to create a normal Markdown note for it.Use Settings → Diary → Date formats to add recognition formats and choose one creation default separately for daily, monthly, and yearly notes. For example, YYYY-[M]MM-DD creates 2026-M10-13.md. Changing a default keeps existing filenames; moving a note preserves its recognized format. Color palette and Holiday color configure linked note colors and holiday styling. Existing-color linking previews notes in the configured scan scope and changes only your selection.
한국어로 빠르게 시작하기:
main.js, manifest.json, and styles.css to Vault/.obsidian/plugins/diary/.After updating, reload Obsidian to load the installed build. If notes still open inside the sidebar planner, confirm Diary is 1.20.2 or later; sidebar notes should open in a new main workspace tab on desktop and mobile.
See the development guide for date-format, color, testing, and release rules.
npm install
npm run dev
Production build:
npm run build
Lint:
npm run lint
Design document lint:
npm run design:lint
Regression and locale consistency checks:
npm test
src/main.ts: plugin lifecycle, view registration, sidebar planner setup, commands, refresh wiring.src/settings.ts, src/settings/*: settings schema/defaults and shared settings UI.src/utils/date-formats.ts, src/utils/planner-colors.ts: filename parsing/creation and linked color resolution.src/views/yearly-planner/*: yearly calendar UI, interactions, modals, file operations.src/views/monthly-planner/*: monthly grid UI, sidebar compact layout, mobile pinch zoom, interactions.src/views/monthly-list-planner/*: monthly list UI, filters, and interactions.src/views/*/sidebar-view.ts: compact side-leaf variants for planner views.src/views/planner-clipboard.ts: multi-select copy/paste/delete/undo flow.src/views/planner-components.ts, src/views/planner-dom.ts: shared planner chips, badges, labels, and pointer/DOM lookup helpers.src/views/planner-layout.ts, src/views/plan-note-panel.ts: shared headers, filters, container/scroll restoration, and reusable plan-note panels.src/ui/components.ts: shared buttons, button rows, fields, disclosures, badges, errors, and press feedback for planner, modal, and settings surfaces.src/planner-reminders.ts: runtime reminders based on notify_minutes.src/i18n.ts, locales/*: English, German, Spanish, French, Japanese, Simplified Chinese, Traditional Chinese, and Korean localization.docs/*/README.md: full documentation for each supported UI language.design.md: current planner design rules; runtime tokens and component primitives live in styles.css, src/ui/components.ts, and src/views/planner-components.ts.styles.css: shared styling tokens and per-view UI styles..github/workflows/release.ymlmain.js, manifest.json, styles.cssnpm version patch|minor|major --no-git-tag-versionThese links open public GitHub issues and require a GitHub account. Do not include private vault content, calendar URLs, access tokens, or other sensitive information.
See LICENSE.