Sahil A78 downloadsTrack anything that expires, renews, or needs periodic attention. Manage subscriptions, documents, licenses, and more.
Never forget another renewal.
Expiry Manager helps you track anything that expires, renews, or needs periodic attention directly inside your Obsidian vault.
Whether it's a domain, passport, subscription, SSL certificate, phone recharge, warranty, or API key, Expiry Manager keeps everything in one place with reminders, progress tracking, and renewal history.
All data is stored as plain Markdown notes with YAML frontmatter. Your data remains yours forever.
Most reminder apps are built around events.
Expiry Manager is built around things that have a lifecycle.
Instead of creating recurring reminders, you create an item once and keep its entire renewal history.
Perfect for tracking:
A clean overview of everything that matters.
Each item shows:
View upcoming expiries in chronological order.
Perfect for answering:
"What's expiring next?"
Visual monthly calendar showing all expiry dates.
Great for spotting busy renewal periods.
Renew an item with one click.
Instead of overwriting dates, Expiry Manager:
Receive Obsidian notifications before an item expires.
Reminder offsets are fully configurable.
Examples:
Quickly create common entries.
Included templates include:
Quickly find entries by:
Track:
Click the ribbon icon or run:
Expiry Manager: Open Dashboard
Click New Entry and choose a template.
Fill in:
Optionally add:
Expiry Manager automatically:
---
name: ChatGPT Plus
category: Subscription
provider: OpenAI
start: 2026-07-01
expiry: 2026-08-01
cost: 20
currency: USD
autoRenew: true
reminders:
- 30
- 7
- 1
tags:
- ai
- productivity
---
| Command | Description |
|---|---|
| Open Dashboard | Opens the Expiry Manager dashboard |
| New Entry | Creates a new expiry item |
| Edit Entry | Edits the selected item |
| Renew Entry | Creates the next renewal period |
All entries are stored as Markdown files inside:
Expiry Manager/
The storage folder can be changed in plugin settings.
No databases.
No cloud dependency.
No vendor lock-in.
Download:
main.jsmanifest.jsonstyles.cssCopy them into:
<vault>/.obsidian/plugins/expiry-manager/
Enable the plugin from Community Plugins.
git clone https://github.com/sahilium/expiry-manager.git
cd expiry-manager
npm install
npm run dev
Production build:
npm run build
See CONTRIBUTING.md for development setup, code style, and PR guidelines.
Bug reports, feature requests, and pull requests are always welcome.
MIT