Repository navigation
Render the Calendar view with @tasknotes/calendar and the shared model calendar - #2429
Merged
Merged
Conversation
Replace FullCalendar with the in-house @tasknotes/calendar engine. - calendarEngine converts built events to calendar items and calendar changes back to the event shape the mutation and menu helpers expect, so calendar-core and the mutation planning stay unchanged. - Bases layout settings map through basesLayoutOptions, so existing .base files keep their view, day counts, slot range, height mode, week numbers, weekends, all-day row, today width and event limits. - Setting changes call setOptions instead of rebuilding the calendar; data changes diff items in place. - Popout windows are supported, so the popout guard is removed, along with the FullCalendar sizing, scroll, canvas-zoom and header workarounds. - TaskNotes' semantic fc-* event classes are kept for CSS snippets; FullCalendar-internal styles are removed. - External drags into the calendar use native HTML drag and drop. - Unit tests ported to the new engine; FullCalendar-internal tests removed. The library is vendored as a packed tarball until it is published.
… settings Swap FullCalendar selectors for the new calendar's classes, compute time slots from the grid geometry, and add a spec that checks saved Bases calendar settings apply and that drag and resize write back to tasks.
callumalpass
force-pushed
the
calendar/tnc-engine
branch
from
October 26, 2026 19:38
230e916 to
41540e1
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
@tasknotes/calendar@0.1.0). Saved.basecalendar settings keep applying, and the TaskNotesfc-*event styling hooks remain; CSS snippets that target FullCalendar internals need updating.@tasknotes/model@0.3.0-rc.18): incremental per-task rebuilds, exact edit plans, and the model's shared calendar fixtures run through the plugin's mapping.Verified locally: lint, typecheck, 5,638 Jest tests, build (main.js 4.09 MB, under budget), i18n verify. Isolated Obsidian 1.14.2: calendar engine/settings specs (6),
tasknotes.spec.tscalendar tests (27), and calendar/recurring/timeblock issue specs (16, including all #2396 cases).The branch history contains intermediate vendored package tarballs; squash merging keeps them out of
main.