Horizon

by Mario Miletta
5
4
3
2
1
Score: 31/100

Description

The Horizon plugin brings periodic notes, dated notes and tasks into a calendar with a sidebar mini calendar and month, week, day, agenda and journal views. Clicking a date opens or creates its daily note, while week numbers open weekly notes. Tasks support completion toggles, drag to reschedule, snooze presets and overdue triage with an undo option. Recurring tasks open at their source line because completion requires the Tasks recurrence engine. Notes can appear as cards with excerpts and cover images and Bases can display filtered notes on a month calendar using a chosen date property. Optional Google Calendar integration displays events without writing to Google and provides meeting note actions, but events currently remain unavailable on mobile. Periodic templates support agenda and weekly digest tokens. An agent API supports agenda access and task changes, with proposals accepted or dismissed through calendar chips.

Reviews

No reviews yet.

Stats

0
stars
377
downloads
0
forks
7
days
6
days
6
days
8
total PRs
0
open PRs
0
closed PRs
8
merged PRs
1
total issues
1
open issues
0
closed issues
134
commits

Latest Version

7 days ago

Changelog

What's Changed

Full Changelog: https://github.com/mariomile/obsidian-horizon/compare/0.4.4...0.4.5

README file from

Github

Horizon

Calendar for your Obsidian vault: daily and periodic notes, tasks, and dated notes in one place.

Part of the marioverse Obsidian plugin suite.

Views

  • Sidebar mini calendar — month at a glance with content dots: daily note (accent), due tasks (orange), overdue (red), scheduled (cyan), done (green), dated notes (gray). ISO week numbers open weekly notes.
  • Calendar tab (ribbon icon or Horizon: Apri il calendario) with three modes:
    • Mese — 7-column grid with content chips per day; "+N altri" jumps to the week view
    • Settimana — hour grid for the week: an all-day lane per day (all-day events, tasks, untimed notes) above timed events and timed notes placed by time, with a current-time line
    • Giorno — the same grid for a single day
    • Agenda — chronological list of the upcoming days that have content
    • Diario — a text-first feed of existing daily notes, newest first, with expandable previews

Data sources

  1. Daily / weekly / monthly / yearly notes — existence resolved live from the per-period folder + filename format configured in settings (monthly/yearly are off by default)
  2. Tasks with obsidian-tasks-plugin emoji dates: 📅 due, ⏳ scheduled, ✅ done. Cancelled tasks (status -) are hidden
  3. Notes with a date frontmatter property (periodic notes are excluded to avoid duplicates)
  4. Google Calendar events (read-only, optional) — see below

Google Calendar

Horizon reads your Google calendars and shows their events in every view. It never writes to Google.

Setup (once, on desktop):

  1. In Google Cloud Console create a project, enable the Google Calendar API, configure the OAuth consent screen (External, add yourself as a test user, then publish it: tokens of an app left in Testing expire after 7 days).
  2. Create an OAuth client of type Desktop app.
  3. In Horizon settings → Google Calendar paste the client ID, store the client secret as an Obsidian secret, and press Connect. Sign-in happens in the browser and returns to a one-shot local port.

The refresh token lives in Obsidian's secret storage on that device, never in the vault. Calendars follow your Google Calendar selection; switch single ones off in settings. Events refresh every 5 minutes, or with Refresh Google Calendar.

Click an event for: Join call (Meet, Zoom or Teams link), Open/Create meeting note, Open daily note, Open in Google Calendar. A meeting note gets date, gcal_event and a daily link; a Granola note with the same title on the same day is reused instead of creating a new one. On phones events show only after connecting there, which needs the desktop sign-in flow, so mobile stays without events for now.

Rich mini-cards

Notes in Agenda, Week, the day popover, and Bases views render as mini-cards: title (with time), a clean two-line excerpt, and the note's cover image (frontmatter cover/image/thumbnail → first embed → first external image). Hydration is async and LRU-cached. In the compact Month grid, hovering a note chip shows a floating hover-card with image and a longer excerpt. Settings: card length slider and a richCards toggle to fall back to compact chips.

Overdue triage

Open overdue tasks roll up to a pinned "In ritardo" section on today in the Agenda (with a batch "Porta tutto a oggi"), and today's cell shows a red ↩ N badge in every view. Right-click any task chip for snooze presets (Oggi / Domani / Lunedì prossimo / +1 settimana). Every reschedule Notice carries a 10-second Annulla that re-applies the old date through the same guarded writes.

Bases view

Horizon registers as a Bases view: any .base gains a month calendar. The Base decides which notes (filters); the view option dateProperty decides when (default date — set it to created for Granola meeting notes). Timestamps with an explicit offset (Granola writes UTC Z) are converted to the local day and time.

Template tokens

Beyond {{title}} / {{date:FMT}} / {{time:FMT}}, periodic-note templates can use:

  • {{agenda}} — the target day's calendar events and meetings (with times) and open tasks, as plain bullets with source links (never - [ ] lines: no task duplication)
  • {{week-digest}} — pre-compiled weekly review: Fatto (done per day), Meeting e note, In arrivo (due next week).

Agents

(app.plugins.getPlugin('horizon') as HorizonPlugin).api exposes: getAgenda(from, to), getOverdue(), rescheduleTask(ref, kind, day), toggleTaskDone(ref), exportAgenda(), propose(proposal). Reads come from the live index; writes go through the guarded line-edit path.

  • Agenda export — disabled by default; when enabled, writes to the configurable .horizon/agenda.json path at most every 5 minutes of activity.
  • Ghost proposals — agents append to the configurable .horizon/proposals.json path (kind: 'reschedule' | 'new-task', targetKey, optional reason). Horizon renders dashed ✦ ghost chips on the target days; ✓ accepts, ✕ dismisses.

Interactions

  • Click a day (or its number in the tab view) → open the daily note, creating it from the template when missing ({{title}}, {{date:FMT}}, {{time:FMT}} tokens fill against the target day). Mod-click opens in a new tab
  • Click a week number → open/create the weekly note
  • Hover a day with a note → native page preview
  • Checkbox on a task chip → toggle done with a ✅ date, Tasks-plugin compatible. Recurring (🔁) tasks open at the line instead — completing them needs the Tasks rrule engine
  • Drag a task chip onto another day (any view, including the sidebar) → its date field is rewritten in the source file. Writes are guarded: exact text at the expected line, unique-match fallback, abort on ambiguity

Notes

  • Replaces the community Calendar plugin — disable it manually to avoid two sidebar calendars
  • The stale Periodic Notes config is ignored on purpose; Horizon keeps its own per-period settings (first launch seeds the daily period from daily-notes.json)
  • Templater syntax in templates passes through unexecuted (core-Templates tokens only)

Mobile

Verified — isDesktopOnly: false in manifest.json; styles.css ships a pointer: coarse media query with 44px hit areas plus a max-width: 480px responsive rule for compact layouts.

Development

pnpm i
pnpm dev        # esbuild watch
pnpm build      # typecheck + production build
pnpm test       # node native test runner (74+ unit tests, no Obsidian needed)
pnpm lint

Architecture: a pure per-day index (src/index/) fed by metadataCache events, consumed by two ItemViews (src/ui/). All date math is UTC-immune (src/dates.ts); file writes go through guarded line edits (src/edits/). Pure modules never import the Obsidian runtime, so the whole read/write logic tests headless.

Try it

See it running in the Obsidianverse sample vault, a small, fictional vault with the whole plugin suite pre-configured.

Similar Plugins

info
• Similar plugins are suggested based on the common tags between the plugins.
Tasks
5 years ago by Clare Macrae and Ilyas Landikov (created by Martin Schenck)
Task management for the Obsidian knowledge base.
Calendar
6 years ago by Liam Cain
Simple calendar widget for Obsidian.
Kanban
6 years ago by mgmeyers
Create markdown-backed Kanban boards in Obsidian.
TaskNotes
4 months ago by callumalpass
Task and time-tracking management with calendar integration for Obsidian
Notebook Navigator
3 months ago by Johan Sanneblad
A better file browser and calendar inspired by Apple Notes, Bear, Evernote and Day One.
Day Planner
3 months ago by ivan-lednev
An Obsidian plugin for day planning with a clean UI and a simple task format
Sheet Plus
3 months ago by ljcoder
obsidian spreadsheets solutions
Google Calendar
4 years ago by YukiGasai
Add Google Calendar inside Obsidian
Calendarium
3 years ago by Jeremy Valentine
The ultimate Obsidian plugin for crafting mind-bending fantasy and sci-fi calendars
Heatmap Calendar
5 years ago by Richard Slettevoll
An Obsidian plugin for displaying data in a calendar similar to the github activity calendar
Operon
3 months ago by Hasan Yılmaz
Task management system for humans and agents in Obsidian.
Calendar Bases
7 months ago by Edrick Leong
Project Manager
5 months ago by stepankropachev
Project management inside Obsidian. Table, Gantt and Kanban over plain Markdown notes, with a local API for agents and scripts.
Tasks Calendar Wrapper
4 years ago by zhuwenq
This plugin currently provides a timeline view to display your tasks from your obsidian valut, with customizable filters and renderring options.
Maps
a year ago by Obsidian
Map layout for Obsidian Bases. Display your notes as an interactive map view.
Big Calendar
5 years ago by Boninall
Big Calendar in Obsidian, for manage your events in a day/week/month and see agenda too!
Time Ruler
3 years ago by Joshua Tazman Reinier
A drag-and-drop time ruler combining the best of a task list and a calendar view (integrates with Tasks, Full Calendar, and Dataview).
TaskChute Plus
2 months ago by hiroyaiizuka
Execute Taskchute for Obsidian
Apex Dashboard
4 months ago by PandoraReads
Stop switching between Obsidian notes. One page. Everything you need. Memo your thoughts, crush your todos, track your projects — and make it look incredible doing it.
基于第二大脑理念的Obsidian工作台,一站式管理笔记、待办、备忘录、项目和你的日常工作流
Heatmap Tracker
2 years ago by Maksim Rubanau
A customizable heatmap tracker plugin for Obsidian to visualize daily data trends with intuitive navigation and flexible settings.
Full Calendar Remastered
4 months ago by obsidian-full-calendar-remastered
Keep events and manage your calendar alongside all your other notes in your Obsidian Vault.
Task List Kanban
2 years ago by Chris Kerr
Feed Bases
5 months ago by edrickleong
Task Collector
5 months ago by ebullient
Manage tasks and logs within an Obsidian note.
Kanban Bases View
7 months ago by I. Welch Canavan
A kanban-style drag-and-drop custom view for Obsidian Bases that allows you to organize your notes into columns based on any property.
Archiver
5 years ago by ivan-lednev
Archive completed tasks in your Obsidian vault (plus other org-mode-like features)
ICS
3 years ago by muness
Generate Daily Planner from one or more ical feeds
Prisma Calendar
3 months ago by Matej Vavro Productivity
Prisma is not just a calendar plugin. It turns any note with a date into a flexible planning system inside Obsidian. There are no rigid schemas or predefined structures — just your data, your rules, fully under your control. It lets you see your entire vault through time.
Abyss Tasks
16 days ago by flowing-abyss
Task management for Markdown tasks in Obsidian.
Base Board
5 months ago by mderazon
Kanban Plugin For Obsidian
Bases Charts
5 months ago by Moritz Jung
Notion Bases
4 months ago by bgarciamoura
Turn any folder into a Notion-style database — 7 views, 17 column types, formulas, relations, rollups, and subtasks. All stored in plain Markdown frontmatter.
Daily Note Outline
4 years ago by iiz
Add a custom view which shows outline of multiple daily notes with headings, links, tags and list items
Obsidian Google Tasks
5 years ago by YukiGasai
Add Google Tasks inside Obsidian
OZ Calendar
4 years ago by Ozan Tellioglu
Obsidian plugin to display notes on a calendar based on YAML frontmatter or file names
Jump-to-Date
5 years ago by TfTHacker
Jump to a date via a convenient popup form. This plugin is a part of the Obsidian42 family of Obsidian plugins.
Date Inserter
3 years ago by namikaze-40p
An Obsidian plugin that lets you insert a date at the cursor position using a calendar.
Google Calendar and Contacts Lookup
4 years ago by ntawileh
Obsidian plugin that pulls contact and calendar event information from your Google account
Trello
5 years ago by Nathonius
An Obsidian Plugin that connects Trello cards to Obsidian notes.
Daily notes calendar
2 years ago by bartkessels
Quickly navigate your vault using a calendar view, this plugin allows you to create and navigate to periodic notes and notes that are created on a specific date.
iCal
3 years ago by Andrew Brereton
This is a plugin for Obsidian that searches your vault for tasks that contain dates, and generates a calendar in iCal format that can be imported into your preferred calendar application.
Gantt Calendar
4 months ago by Sugar
obsidian-gantt-calendar
Uncheck All
3 years ago by Shahar Har-Shuv
Obsidian plugin to uncheck all checkboxes in a file with one action
Checklist Reset
4 years ago by Luke Hansford
Add a command to reset the state of any checklists in a document in Obsidian
Chinese Calendar
2 years ago by DevilRoshan
在obsidian中使用的更符合中国习惯的日历插件。
List Modified
5 years ago by Francis Kafieh
🪨 The advanced and adaptive changelog for Obsidian. Links all modified files meeting certain criteria to a timed (daily, weekly, monthly) note.
Outlook Meeting Notes
2 years ago by David Ingerslev
An Obsidian plugin to create meeting notes from Microsoft Outlook .msg files
Task Marker
4 years ago by wenlzhang
An Obsidian plugin to change task status and append text with hotkeys and right-click context menu.
Dust Calendar
3 years ago by 纳米级尘埃
obsidian 日历插件
Timekeep
2 years ago by Jacobtread
Obsidian task time tracking
Org Mode
5 years ago by ryanpcmcquen
Add Org Mode support to Obsidian.
Live Life Recording
4 months ago by goryugocast
Operate tasks directly in Markdown with start/finish records, routine insertion, and a lightweight daily summary for Obsidian.
Sync Google Calendar
3 years ago by Dexin Qi
Sync tasks from Obsidian with system calendar
Morgen Tasks
2 years ago by Morgen AG
Diarian
2 years ago by Erika Gozar
All-in-one journaling toolkit.
Agile Task Notes
4 years ago by BoxThatBeat
This Obsidian plugin integrates your TFS data from either Jira or Azure Devops
Ego Rock
3 years ago by Ashton Eby
An obsidian plugin that implements a basic taskwarrior UI for listing and modifying tasks.
TodoTxt
3 years ago by Mark Grimes
Obsidian plugin to manage todotxt files
Habit Calendar
4 years ago by Hedonihilist
Monthly Habit Calendar for DataviewJS. This plugin helps you render a calendar inside DataviewJS code block, showing your habit status within a month.
Week Planner
4 years ago by Ralf Wirdemann
Datepicker
2 years ago by Mostafa Mohamed
Datepicker widget for Obsidian.
Dynamic Timetable
4 years ago by L7Cy
Calculate the estimated completion time from the estimated task time and dynamically create a timetable.
Itinerary
5 years ago by Adam Coddington
Make planning your trip or event easier by rendering a calendar from event information found in your notes.
Projects Plus
a month ago by Pavel
Projects Plus turns a folder of notes into a managed project: you see all tasks on a kanban board, all events on a calendar, all cards in a gallery — all without export, without cloud, right in your vault.
Bases Paginator
3 months ago by sean2077
A plugin for Obsidian that adds a paginated table view with column filtering capabilities to Obsidian Bases.
MagicCalendar
3 years ago by Vaccarini Lorenzo
An obsidian plugin that exploit a natural language processing engine to find potential events and sync them with iCalendar
Pending notes
4 years ago by Ulises Santana
Obsidian plugin for searching links without notes in your vault.
Habitica Sync
5 years ago by Leoh and Ran
This is a under-development Obsidian Plugin for Habitica
Daily notes opener
5 years ago by Reorx
Easily open daily notes and periodic notes in new pane; customize periodic notes background; quick append new line to daily notes.
Simple Todo
2 years ago by elliotxx
A minimalist text-based todo manager (Text-Based GTD) for efficient task management in Obsidian.
Single File Daily Notes
3 years ago by Pranav Mangal
An Obsidian plugin to create and manage daily notes in a single file
Carry-Forward
5 years ago by Jacob Levernier
An Obsidian Notes plugin for generating and copying block IDs, and copying lines with a link to the copied line
Homework Manager
3 years ago by Kadison McLellan
An Obsidian plugin that keeps track of homework through a to-do list.
Checkbox 3 states
4 years ago by Renaud Héluin @ NovaGaïa
This is a simple plugin for add a third state to checkbox list.
Bases Toolbox
3 months ago by Grub Basket
Adds Quality of Life features to Obsidian Bases
Grind Manager
3 years ago by dromse
Gamify your task management with rewards system, craft your tasks by tags.
Things Link
5 years ago by @gavmn
TODOseq
3 months ago by Stephen Cross
TODOseq ("to-do-seek") is a lightweight, keyword-based task tracker for Obsidian
Flow
2 years ago by Ben Phillips
Implements key processes in David Allen's Getting Things Done (GTD) methodology
ProgressTracker
2 years ago by Van Nam
A plugin that helps you track progress and manage tasks in your notes.
Auto Periodic Notes
2 years ago by Jamie Hurst
Obsidian plugin to create new periodic notes automatically in the background and allow these to be pinned in your open tabs. Optionally uses the "Periodic Notes" plugin.
Daily Statistics
2 years ago by yefengr
obsidian daily statistics
Link Structure
2 months ago by Dmitry Fert
Obsidian plugin that adds a Structure view for Bases, displaying notes as a hierarchical tree based on the up property. Supports drag-and-drop reorganization with automatic link updates, multi-select, and Templater integration.
Bases Timeline View
24 days ago by xjiaxiang
timeline view for obsidian bases
Custom State for Task List
3 years ago by Okami Wong
A plugin for Obsidian to define your own states for task items.
Daily Routine
2 years ago by sechan100
Habit tracker & daily routine planner for Obsidian — recurring tasks, todos, streaks, calendar. 습관 트래커 · 루틴 관리
GTD No Next Step
3 years ago by Tobias Davis
Obsidian plugin for GTD workflow, badge projects with no next step.
Random To-Do
5 years ago by NatiAris
Pick a random todo item or a file with todo items
Checkbox Time Tracker
2 years ago by UD
Checkbox Time Tracker for Obsidian
Brainframe
4 years ago by pedersen
Amazing Marvin
5 years ago by Shirayuki Nekomata
Simple plugin for Amazing Marvin
Nav Link Header
2 years ago by ahts4962
Display navigation links at the top of the notes in Obsidian
Prioritize
4 years ago by EloiMusk
Obsidian Plugin, to prioritize stuff in Obsidian
Canvas Bases
3 months ago by callumalpass
Canvas-style layouts and JSON Canvas materialization for Obsidian Bases.
Track-a-Lot
3 years ago by Iulian Onofrei
This is a tracker plugin for Obsidian
MemoChron
a year ago by Michalis Efstratiadis
Calendar integration and note creation with support for public iCalendar URLs.
Send to Canvas
a year ago by wenlzhang
An Obsidian plugin that allows you to send tasks, blocks, and notes to Canvas files as plain text, links, and embeds.
BeautyTasks
3 months ago by Avni Bilgin
Todoist-style task & project manager for Obsidian — one markdown note per task, native UI, no plugin dependencies.
Due When
3 years ago by Andy Baxter
An Obsidian plugin which gives shortcuts to insert set due dates
Another Simple Todoist Sync
2 years ago by eudennis
Obsidian.md plugin to integrate with Todoist app.
TODO Wrangler
3 years ago by Jeel Shah
An obsidian plugin to wrangle your Todos and put them in their place.
Checkbox Sounds
2 years ago by yasd251
Adds a nice completion sound for checkboxes when ticked in Obsidian
Order List
4 years ago by Henry Gustafson
Simple Reminder
a month ago by Dmitry
Напоминалка
Journal View
3 months ago by RUverse
A journal view for Obsidian
Gantt this
2 months ago by Altarok
Obsidian plugin showing multiple TTRPG calendars at once in one gantt chart.
Pomodoro Planner
3 years ago by Onur Nesvat
GTD Tasks
3 months ago by unpreditable
Google Calendar Importer
a year ago by Fan Li
A simple and light-weighted google calendar importer, allow injecting the events / tasks of a day automatically to your daily notes, or import it to anywhere with a command.
Pivotal Tracker Integration
3 years ago by jondeates
Task list
3 years ago by Ted Marozzi
A simple obsidian plugin enabling better task management via lists.
WorkLife Calendar
2 months ago by RavenLife
Say goodbye to chaos. A smart calendar, task tracker, time tracking, habit tracking, and finance management — all in one beautiful, connected space.
Things3 Today
3 years ago by wudanyang6
Vikunja Sync
2 years ago by Peter Heiss
Manage your tasks in vikunja.
Goal Tracker
2 years ago by Ben Rotholtz
Amazing Marvin Integration
3 years ago by Cloud Atlas
Interoperability between Obsidian and Amazing Marvin
Personal OS
3 years ago by A.Buot
Asana
2 years ago by Ryan Bantz
Obsidan plugin that creates tasks in Asana for highlighted text or the current line
Life in Weeks Calendar
a year ago by Jeff Szuc
Plugin for the Obsidian markdown editor. Displays a calendar of your life in weeks with weekly Periodic Notes plugin integration. Includes options for the traditional Memento Mori/Stoic style calendar, as well as a Gregorian calendar accurate version.
Calendar Event Sync
3 years ago by Stephen Dolan
Set the title of your note to the current event
Split Groups
a month ago by Fuad Laguda
Obsidian Bases view that puts a note in every group its list property names
Power Bases
3 months ago by Power Plugins
Add board, calendar, timeline, chart, gallery, and table views to Bases, with inline editing, colors, rollups, field types, formulas, and CSV import.
Lunar Calendar
3 years ago by OSmile
obsidian插件,一个支持农历的日历插件。
Synaptic View
7 months ago by Yongmini
Obsidian Plugin : Synaptic View that unifies your dashboards, hub notes, quick-entry notes, periodic notes, web shortcuts, and calendar navigation—enable it as the default new-tab experience or summon it with a command.
Rollover Plus
2 months ago by Wren
Move unfinished tasks between daily notes with Rollover Plus.
BrainCore LifeOS
a month ago by 囍樂
BrainCore 侧边栏不仅是一个展示面板,更是你整个 Obsidian 知识库的“核心呼吸机”。它由 6 大模块组成,涵盖了时间感知、极速收集、工作流转、习惯养成与知识内化。一切信息从这里输入,最终也会在这里沉淀。
doing
2 years ago by rooyca
What was I doing?
Markdown Calendar Generator
a year ago by Zach Russell
An intentionally simple obsidian markdown table calendar generator
Xboard
2 months ago by wrbin
一款易上手、已美化、更适合AI工作流的obsidian工作台
Routine Timeline
17 days ago by Arsalan Amin
The Routine Timeline plugin is built and sent as main.js, manifest.json and styles.css. It type-checks and bundles cleanly, but I couldn't run it inside Obsidian, so test it before relying on it.
Base Source Editor
a month ago by fronglemog
Edit the YAML source of a Base without leaving Obsidian.
Every Day Calendar
2 years ago by QuBe
Obsidian plugin to create calendars inspired by Simone Giertz's Every Day Calendar
Xove Dashboard
2 months ago by ty
Obsidian 个人工作台插件:把任务管理 / 项目管理 / 灵感收集 / 笔记统计 收进一个首页,数据全留在本地的。
Kikijiki Habit Tracker
2 years ago by KIKIJIKI
Kikijiki Habit Tracker Plugin for Obsidian
Abele
2 months ago by dudaanton
An Obsidian plugin that adds a lot of functionality I personally find missing.
Genkan
15 days ago by Kenroy Harrison
A dashboard for Obsidian. Can also display notes from Pebble index-01 ring if configured.
Home Cards
11 days ago by ttangents
Home Cards plugin for Obsidian. Show a start page of note cards, in sections drawn from recent activity, properties, tags and links, styled by your active theme.
Yori Task
5 months ago by yorigo77
task manager, week planner, year planner
Masonry
7 days ago by Mario Miletta
A visual masonry browser for Obsidian notes and filtered Bases.
Cool Bases
8 days ago by pattgue
Design cool card views for Obsidian Bases.
Yuhanbo Task
3 months ago by yuhanbo
Obsidian 智能任务管理与番茄时钟插件,集成 AI 智能拆分的任务管理系统,配备专业番茄时钟,提升工作效率。
Wiki Companion
2 months ago by Mo A
A minimalist, read-only calendar for Obsidian, built on the frontmatter you already have.
Weekday Commands
2 months ago by Wren
Simplest Todo
5 months ago by kintolayli
Markdown Tasks
3 days ago by jsmorabito