Changelog
Everything that has shipped, newest first. Widgets update in place, so an embed you already pasted into Notion picks up most changes on its next load.
Last updated 2026-08-15
- New
D-Day Pro — every date, nearest first
See the widget →The free D-Day widget counts one date, which is right until you have four. Pro takes a list and sorts it by whatever happens next — dates ahead count down, dates behind count up, and a thousandth day arriving on Friday outranks a birthday next month.
Milestones are worked out for you: every hundred days and every anniversary, whichever comes first, with how far away it is. Birthdays repeat every year rather than receding, 29 February stays in February, and Korean day-1 counting is a per-date switch. The list is edited on the site and the embed only reads it — which is what lets the embed be locked to your account.
- New
Budget Tracker Pro — your ledger lives in Notion
See the widget →The free Budget Tracker keeps a bounded number of entries and shows the current month, which is right for "what's left this month" and wrong for keeping a year of records. Pro moves the ledger into a Notion database you own: each expense becomes a row, and the widget's total is a query over that database rather than over anything we store.
So the history accumulates where Notion's filters and charts can reach it, a row added in Notion shows up in the widget, and there is no entry cap. The widget still can't delete rows — a destructive write authorized by a public embed URL isn't something you would notice and undo — so corrections happen in Notion.
Which column is which is yours to choose — amount, date, and whether the note goes in the row title or a text column of its own — pre-filled with a sensible guess, because a database with Spent beside Income beside Budget makes a guess exactly that.
- New
New widget: Budget Tracker
See the widget →Set a monthly budget, then type expenses straight into the embed — amount, short note, done. The headline is what you have left, with a bar for how much of the budget is gone and the month's entries listed underneath.
The month comes from your device's clock rather than a stored field, so it rolls over by itself at local midnight and nothing is deleted when it does — last month's total stays visible underneath. Won, dollars, euros and yen, switchable inside the widget.
- Fixed
The rest of the date widgets roll over too
Last week's midnight fix covered Habit Tracker Pro, Today and Age. Going through the others found the same fault in Mini Calendar, D-Day, Quote of the Day, Habit Tracker and the year and month progress bars: left open in a Notion page, each kept showing the day it was opened.
The calendar had a second, quieter version of it. Its pages are pre-rendered, and the highlighted day was baked in at build time — so a freshly loaded calendar ringed the day of the last deploy, not today. It now marks the real date, and a calendar left open on the last of the month turns the page by itself unless you have paged somewhere else.
- Fixed
Widgets no longer get stuck on yesterday
See the widget →A widget in a Notion page left open across midnight kept showing the previous day. On Habit Tracker Pro that wasn't only cosmetic: ticking a habit in that state recorded it against yesterday rather than today.
Widgets now roll over on their own at midnight — no reload needed, and a laptop closed for days comes back on the right date. Today and Age had the same fault and are fixed with it.
- Improved
Pomodoro: set your own focus and break lengths
See the widget →The focus and break durations are now editable inside the widget — click the "Focus 25m · Break 5m" line under the buttons and type your own. Anything from 1 to 180 minutes of focus and 1 to 60 of break.
The setting saves to the cloud, so it follows the embed across devices and reloads. Embeds pasted before this update have no saved state to attach to; the widget will tell you so if you change a duration, and re-embedding from the gallery fixes it.
- Improved
A small olivtwig.co mark on embeds, and much lighter embed pages
Embedded widgets now carry a faint "olivtwig.co" link in the bottom-right corner. It is the only thing on an embed that tells a visitor where the widget came from. It hides itself on narrow embeds and on widgets whose content fills the frame, so it never sits on top of anything.
Embed pages also got a lot lighter — from about 139KB to 40KB — by no longer shipping the long-form detail-page text and the analytics script that embeds never used. Nothing about how the widgets behave has changed.
- Improved
D-Day: optional Korean-style "day 1" counting
See the widget →Korean anniversary counting includes the start date, so "100 days" means the 100th day counting from day one — 99 days elapsed. The widget counted the plain difference, which read a day short to anyone used to an anniversary calculator.
There is now a "Start from day 1" switch in the date editor. On, the target day itself shows D+1 and the 100th day lands exactly on D+100; off, the target day is D-Day and the next day is D+1. It is on by default on the Korean widget and off elsewhere. Counting down is unchanged.
This release also fixes an off-by-one for viewers west of UTC, whose D+ count could read one day high.