Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Rollover

Stefan ImbesiStefan Imbesi65 downloads

Close the previous dated note and open the next one, in one command — date-stamped, with optional templating.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates1

A lightweight Obsidian plugin for date-stamped note workflows. One command closes the previous dated note and opens the next one — renaming the old note to mark it done and creating a fresh, date-stamped note in the same folder.

It's fully configurable, so it adapts to any naming convention rather than a single hard-coded format.

What it does

Running Roll over to the next note:

  1. Finds the most recent open note in the target folder — a note whose name ends with your pending marker.
  2. Closes it by replacing the pending marker with your done marker, using Obsidian's FileManager.renameFile so internal links to the note update automatically.
  3. Creates a new note named with the next date, plus your label and pending marker, in the same folder.
  4. Fills the new note — optionally carrying over a copy of the previous note's content, or applying a template with token substitution (otherwise it's empty).

How the date is chosen: normally it's today's real date — so after you skip days (weekends, holidays) it jumps straight to today rather than a wrong in-between date. If the note you're closing is already dated today or later, it advances to the day after instead, so you never end up with two notes on the same date.

Example (default settings)

A folder containing:

2026-06-16 ✓
2026-06-17 —     ← today's open note

Run Roll over to the next note on 18 June and you get:

2026-06-16 ✓
2026-06-17 ✓     ← closed
2026-06-18 —     ← created

Commands

Command Description
Roll over to the next note Close the most recent open note, then create the next dated note (today's, or the day after the closed note if that's already today or later).
Mark current note as done Close only the active note (pending → done). Appears only when the active note's name ends with the pending marker.

Neither command sets a default hotkey — assign your own in Settings → Hotkeys.

Settings

Folder

  • Folder mode — Active file's folder (default) or Fixed folder.
  • Fixed folder path — vault-relative path used in fixed mode (e.g. Journal/2026).

File naming (with live previews)

  • Date format — Moment.js tokens, e.g. YYYY-MM-DD.
  • Note label — optional text after the date, e.g. — Log.
  • Pending marker — marks an open note, e.g. —.
  • Done marker — replaces the pending marker when closed, e.g. ✓.

New note content

  • Carry over previous content — start today's note as a copy of the previous note's content, ready to edit (default off).
  • Template file — optional vault-relative .md path (with file autocomplete).

Behaviour

  • Open note on create — open the new note after creating it (default on).
  • Show notice when a note is closed — confirm when the previous note is marked done (default on).

Markers and labels become part of the file name, so avoid characters Obsidian disallows in note titles: * " \ / < > : | ? # ^ [ ].

Templating

If a template file is configured, its contents are copied into the new note with these tokens substituted:

Token Replaced with
{{date}} Today's date in the configured date format
{{label}} The configured note label
{{day}} Full day name, e.g. Wednesday
{{isoDate}} Full ISO date, e.g. 2026-06-17

Content precedence: if Carry over previous content is on, today's note is seeded with a copy of the previous note instead — the template is then used only on the first run, when there's no previous note to copy. With both off, the note is created empty.

Works for many conventions

The pending/done markers, date format, and label are all configurable, so the same one-command workflow fits:

Use case Pending → Done
Daily log 2026-06-17 — → ✓
Freelancer work log 2026-06-17 Work Log [pending] → [done]
Student lecture notes 2026-06-17 — Lecture — → ✓
Researcher field notes 2026.06.17 Field Note OPEN → DONE
Weekly standup 2026-W25 — Standup — → ✓
Personal check-ins 26.06.17 — Check in — → ✓

Development

npm install      # install dev dependencies
npm run dev      # watch build → main.js
npm run build    # type-check + minified production build

To test in a vault, copy (or symlink) manifest.json, styles.css, and the built main.js into <vault>/.obsidian/plugins/rollover/, then enable the plugin in Settings → Community plugins.

Releasing

Releases are produced by .github/workflows/release.yml. Bump the version, tag it (the tag must equal the manifest.json version, with no v prefix), and push the tag:

npm version patch          # updates manifest.json + versions.json, commits, tags
git push && git push --tags

The workflow builds the plugin and attaches main.js, manifest.json, and styles.css to a draft release — review it, then publish.

License

MIT

HealthExcellent
ReviewSatisfactory
About
Close the most recent pending date-stamped note and create the next date-stamped note in the same folder, renaming the old file to mark it done and updating internal links. Carry over content or apply a template, choose today's date (or advance past an existing same-day note), and support customizable naming conventions.
DatesFilesTemplating
Details
Current version
1.0.0
Last updated
2 months ago
Created
2 months ago
Updates
1 release
Downloads
65
Compatible with
Obsidian 1.5.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Sponsor
GitHub Sponsors
Buy Me a Coffee
Author
Stefan ImbesiStefan Imbesistefan-imbesi
stefan-imbesi.com/
GitHubstefan-imbesi
tefansay
stefan-imbesi
  1. Community
  2. Plugins
  3. Dates
  4. Rollover

Related plugins

QuickAdd

Quickly add new notes or content to your vault.

LifeOS

Life management system.

Periodic Notes

Manage your daily, weekly, and monthly notes.

Journals

Manage your journals.

Vault Changelog

Maintain a changelog of recently edited notes.

Create Note in Folder

Add commands to create a note in a specific folder.

Notebook Navigator

A better file browser and calendar inspired by Apple Notes, Bear, Evernote and Day One.

Claudian

Embeds Claude Code/Codex and other local Agents as AI collaborators in your vault.

Advanced URI

Control everything with URI.

Tasks

Track tasks across your vault. Supports due dates, recurring tasks, done dates, sub-set of checklist items, and filtering. Maintained by Clare Macrae and Ilyas Landikov, created by Martin Schenck.