Timeline
Pick a colour and drag to record a stretch of time. Its duration appears automatically. Hatched blocks are plans; solid blocks are what really happened.
Modular Diary turns an Obsidian note into a page you can arrange yourself: timeline, to-dos, habits, daily quote, and time stats. Choose what belongs. Draw a time block and your to-dos and habits update with it. The whole day lives in Markdown.
This is a live demo. Toggle the modules, drag their headings to reorder them, drop a to-do on the timeline to make a plan, or draw a block to record time.
They all read and write the same Markdown block, so a change in one place shows up everywhere. Move, resize, or hide a module, and save your layout as the default for new notes.
Pick a colour and drag to record a stretch of time. Its duration appears automatically. Hatched blocks are plans; solid blocks are what really happened.
Estimate a task, then drag it onto the timeline to make a plan. Afterwards, see how long it actually took.
Set a goal such as “exercise 30 minutes a day.” Once your timeline adds up to the target, it checks itself off.
See one line from your own quote list each day, on a background coloured like a highlighter. Add quotes one per line.
See how much of today went to each kind of activity. No export or dashboard needed.
Write “Just ran for half an hour” and it works out the time, category, and colour. This optional module uses your own model API key.
There is also a text module for plain Markdown. Add as many as you need.
When nobody sets your schedule, you need to see where your time goes. The same plugin can become a different page for each person.
It takes a few drags a day. After a week, you can see the shape of your time—and decide what to change.
The entire page is one timeline code block in your note. Actions in the interface write back to these lines, and edits to the lines show up in the interface.
```timeline date: 2026-09-05 layout: text@0,0,6,4 todos@0,4,6,5 timeline@6,0,6,45 todo: id="t1" done=false estimate=240 title="Draft chapter three" --- plan 09:00-12:00 Writing 09:15-11:45 Writing Draft chapter three [todo:t1] 11:45-12:30 Lunch @13:10 Feeling tired; take a short walk === No messages until the writing is done. ```
MD is Modular Diary.
It is also .md.
No database or sidecar files. Git can diff it, and your existing note sync can carry it. Even without the plugin, it is still readable text. Give the included skill to your agent and it can write entries too.
In a timeline code block inside your note. There is no database or sidecar file. Your notes can travel through iCloud, Git, or Obsidian Sync, and remain readable without the plugin. Habit rules, quotes, and category colours live in the plugin's global settings.
Yes. Drag modules to reorder them, resize them from the edges, or hide them from the context menu. Add them back from “More.” The layout line stores the arrangement; you can also make it the default for new diary blocks.
No. The timeline, to-dos, habits, quote, and stats work offline. Quick capture is optional. Without an API key it shows a setup prompt; you can hide the module altogether.
Yes. You can view and draw on the timeline in Obsidian mobile. Quick capture can use a model API on mobile; the local Claude CLI backend is desktop-only.
Set up a “category → colour” list in the plugin settings. Notes store category names, so changing a colour does not rewrite old entries.
The new plugin ID is modular-diary, so this is not an in-place update. Back up the old plugin folder and settings locally. Disable Oneday, install Modular Diary, privately copy the old data.json into the new plugin folder, then enable it. Do not enable both: they both handle timeline blocks. You will also need to remap hotkeys and custom CSS. Full migration guide.
A daily page, arranged your way.
Install for Obsidianv0.2.0 · Free · Open source · Desktop and mobile · Obsidian 1.8.7+
Not yet listed in the Obsidian community directory. For now, the button opens the latest GitHub Release. Installation instructions.
Comment beside a sentence in your note and ask an agent to reply.
Arrange saved websites on a freeform canvas and use it as your start page.
Turn what your AI helped you do today into a timeline.