Visitar URL original
v7 delayed for more features · Issue #7907 · fullcalendar/fullcalendar · GitHub
Skip to content

v7 delayed for more features #7907

Open

Description

@arshaw

This ticket tracks progress on the new theme system for v7.

Q & A

Q: Why did you decide to add such a large feature last-minute?
A: After releasing v7.0.0-rc.0, we noticed users having difficulties adapting their custom CSS to the new DOM structure. The DOM structure is "unstable" across major versions, so rather than forcing users to muscle through with converting their CSS, we decided to make a future-proof API for theming that does NOT break across versions. Coincidentally, it works very well with Tailwind.

Q: Why are you releasing 5 themes and 2 theme systems (Shadcn & MUI) all at the same time? Wouldn't cutting scope lead to a sooner release?
A: Yes, but we feel making multiple themes with very different designs will battle-test the theme API and lead to a more stable API in the future. The last thing we want is to change the theme API dramatically between major versions, which would defeat its purpose.

Q: I need v7 very soon. Should I wait for it or use v6?
A: Please use v6. Please continue to write custom CSS against the v6 DOM structure. When v7 is released, we will publish an extensive upgrade guide that includes instructions for converting common CSS selectors to the new theme API.

Q: Should I use v7.0.0-rc.0 in the meantime?
A: No. Please use v6 instead. If you have custom CSS, and you use v7.0.0-rc.0 (which does NOT have the theme API), you'll be writing CSS selectors that won't have a supported upgrade path to the official v7 theme API when it's released.

Preview URL

https://themes.fullcalendar.io

Changelog

https://v7.fullcalendar.io/changelog

Progress

🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩🟩 (100%)

  • Implemented or modified 138 new theming hooks (estimate: 6 days, actual: 12 days)
  • SVG icons for classic theme (estimate: 1 day, actual: 1 day)
  • Refactor CSS for cell/row borders (estimate: 2 days, actual: 2.5 days)
  • Separate core CSS utilities from classic theme CSS (estimate: 5 days, actual 2.5)
  • Expose date-formatting parts to theme (estimate: 1 day, actual: 1)
  • Remove CSS injection & refactor entrypoints (estimate: 1 day, actual: 1 day)
  • For core CSS utilities, use CSS modules and obfuscated classNames (estimate: 1 day, actual: 1 day)
  • Fix new CSS techniques for web-component shadow DOM (estimate: 1 day, actual: 1 day)
  • Implement a Tailwind-version of the classic-theme (unplanned, actual: 10 days)
  • Borderless setting (estimate: 1 day, actual: 0.5 days)
  • Dark-mode for classic theme (estimate: 0.5 days, actual: 1 day)
  • Fixup print-view for classic theme (estimate: 0.5 days, actual 0.5 days)
  • Various small bugfixes mentioned in TODO-v7 (estimate: 3 days, actual: 4 days)
  • First pass as Material Design theme (called "Monarch") (estimate: 3 days, actual 5 days)
  • Lots of theme system revisions to accomodate Monarch theme (unplanned, actual: 12 days)
  • Improve datesSet for completely-custom toolbars. React use* hooks (estimate: 1 day, actual: 1 day)
  • Demo project so showcase permutations of themes/component-libs/colors (unplanned, actual: 2 days)
  • Multiple color schemes for Monarch theme, shadcn/mui demos (unplanned, actual: 1 day)
  • System for generating distributables for all permutations of react/vue/vanilla-js, tailwind/vanilla-css, shadcn/mui/default-controls, js/ts (estimate: 4 days, actual: 10 days)
  • Create Microsoft-inspired theme called "Forma" (estimate: 4 days, actual: 5 days)
  • Create Apple-inspired theme called "Zen" (estimate: 4 days, actual: 5 days)
  • Create Tailwind Plus-inspired theme called "Breezy" (unplanned, actual: 5 days)
  • Unplanned: theme-system improvement work, pt 1, mostly default UI (actual: 5 days)
  • Unplanned: theme-system improvement work, pt 2, mostly MUI/Shadcn (actual: 5 days)
  • Unplanned: refactor theme CSS variables (actual: 2 days)
  • Unplanned: lots of low-priority bugfixes (actual: 3 days)
  • RTL positioning refactor (estimate: 2 days, actual: 1 day)
  • Cleanup of all themes (actual: 32 days)
  • Rig for testing AI conversions (unplanned, actual: 3 days)
  • Babysit AI as it creates tailwind/react/plugins for all themes. Proof-of-concept already created in "System for generating distributables..." above (estimate: 5 days, actual: 11 day)
  • Installer for Shadcn theme (estimate: 1 day, actual: 1 day)
  • Improved composability/modularity for Shadcn and MUI themes (unplanned, actual: 2 days)
  • Minimal installation guide (estimate: 1 day, actual: 1 day)
  • Beta release (beta.5); Omit Vue & Angular support for now (estimate: 1 day, actual: 1 day)
  • Virtual rendering in resource-timeline view (unplanned, actual: 5 days)
  • Vue use* hooks (estimate: 1 day, actual: 1 day)
  • Beta release (beta.6)
  • Old tests passing since theme system revisions and modifying classic theme (estimate: 3 days, actual: 5)
  • Restore Angular support (actual: 2)
  • Refactor package structure to accommodate React-only rendering without Preact (unplanned, actual: 12)
  • Preact package @fullcalendar/preact (unplanned, actual: 2)
  • Integrate temporal-polyfill, clearing of old tz plugins (unplanned, actual: 1)
  • Beta release (beta.7)
  • Full docs & upgrade guide text (estimate: 5 days, actual: 19 days)
  • Incorporate theme schematic graphics into docs (estimate: 1 day, actual: 1)
  • Code-generation wizard on themes.fullcalendar.io (the "Code" button below each demo) (unplanned, actual: 2)
  • Improve theme colors, especially for dark mode (estimate: 2 days, actual: 2 days)
  • Fix theme-system bugs related to overflow, scrollers, sticky elements (unplanned, actual: 4)
  • DOM measurement refactor (estimate: 4 days, actual: 3 -- reduced scope, full refactor punted)
  • Removal of resize-observer ponyfill, subsequent calendar API adjustments (unplanned, actual: 3 days)
  • Removal of range-formatting ponyfill, subsequent calendar API adjustments (unplanned, actual: 2 days)
  • Improve Shadcn DX (unplanned, actual: 1 day)
  • Revive print-view (estimate: 1 day, actual: 1 day)
  • Bugfixes (estimate: 5 days, actual: 7 days)
  • Changelog and docs for changes since beta.8 (estimate: 1 day, actual: 2)
  • Release candidate (rc.1)

Post-RC Tasks (Non-Blocking)

Dev Branch

https://github.com/fullcalendar/fullcalendar-workspace/tree/v7-dev

Activity

  1. j-fdion commented on Mar 18, 2025

    @j-fdion

    What a nice news! Keep up the good work!

  2. laoneo commented on Mar 19, 2025

    @laoneo
    Contributor

    Just started with the migration, and it is indeed a wise decision. Is there an approximate date where final will be shipped?

  3. stehag commented on Mar 19, 2025

    @stehag

    Good Call!

  4. Sparticuz commented on Mar 21, 2025

    @Sparticuz

    Wow, Awesome! This is great news! Excited for the Tailwind support.

  5. brandonkboswell commented on Mar 22, 2025

    @brandonkboswell

    This is the correct decision @arshaw. I'm grateful I saw this post as I was about to update my app. Keep up the great work.

  6. Orgil0123 commented on Mar 27, 2025

    @Orgil0123

    i have a question. we started developing application which will use full calendar premium. Should i start building on version 6 and later upgrade to version 7 or should i wait for it. We almost finished application but full calendar side is on waiting. if we should wait how long will it take approximately. Thank you.

  7. arshaw commented on Mar 28, 2025

    @arshaw
    MemberAuthor

    Thanks @j-fdion, @stehag, @Sparticuz, @brandonkboswell !

    I just updated the above description. Filled in more details about the new theme system.

    @laoneo, in the new description, I have a rough ETA:

    Development will begin April 1st. The goal is to have a release candidate with docs ready 8 weeks later, on May 27th. This is just an estimate.

    @Orgil0123, I would recommend developing on v6 and ensuring your CSS customizations (if any) are in a separate CSS file. Put anything with a .fc-<whatever> className prefix in there. Later upgrading from v6 -> v7, at least from the JS perspective, will be very easy as there are almost zero breaking changes. As far as upgrading custom CSS when v7 is released, that will require effort but should not be very difficult. If you write to the premium email support address, we can help you with any difficulties you run into during the process.

  8. arshaw commented on Apr 18, 2025

    @arshaw
    MemberAuthor

    Please see the top of the post for an update on development progress

  9. JAugustusSmith commented on May 27, 2025

    @JAugustusSmith

    Is there an updated estimate?

  10. remoover commented on May 28, 2025

    @remoover

    also waiting for updates :)

  11. arshaw commented on May 30, 2025

    @arshaw
    MemberAuthor

    Hi @JAugustusSmith and @remoover, I just posted an update above.

  12. laoneo commented on May 30, 2025

    @laoneo
    Contributor

    Congratulations to your new role in life!

  13. roelkoops commented on May 30, 2025

    @roelkoops

    Congratulations on the birth of your baby, Arshaw!

  14. stephenoldham commented on May 31, 2025

    @stephenoldham

    Ayyyy huge congrats @arshaw! Hope everyone is well 👍🏼

  15. remoover commented on Jun 1, 2025

    @remoover

    Congratulations :))) @arshaw ! Wishing you all the best !

  16. 61 remaining items

  17. dimagimburg commented on Apr 19, 2026

    @dimagimburg

    @arshaw Thanks for the update, when is the final release planned for?

  18. arshaw commented on Apr 24, 2026

    @arshaw
    MemberAuthor

    Just released another RC with fixes for a number of user-reported bugs. Thank you!

    v7.0.0-rc.2

    I don't expect another RC, and I expect the final release in about 1-2 weeks.

  19. stalker3343 commented on Apr 28, 2026

    @stalker3343

    Can i now use 7 version in production?

    Q: I need v7 very soon. Should I wait for it or use v6?
    A: Please use v6. Please continue to write custom CSS against the v6 DOM structure. When v7 is released, we will publish an extensive upgrade guide that includes instructions for converting common CSS selectors to the new theme API.
    
  20. pfpro commented on Apr 28, 2026

    @pfpro

    Please use v6. Please continue to write custom CSS against the v6 DOM structure. When v7 is released, we will publish an extensive upgrade guide that includes instructions for converting common CSS selectors to the new theme API. ;)

  21. arshaw commented on May 9, 2026

    @arshaw
    MemberAuthor

    One more release-candidate release. It fixes bugs primarily reported by paid users via email support:
    https://github.com/fullcalendar/fullcalendar-workspace/releases/tag/v7.0.0-rc.3

    This will be the last release-candidate.

  22. deleted a comment from Paul6552 on May 19, 2026
  23. locked and limited conversation to collaborators on May 19, 2026
  24. unlocked this conversation on Jun 19, 2026
  25. arshaw commented on Jun 19, 2026

    @arshaw
    MemberAuthor

    v7 is now officially released 🎉🎉🎉 (See on X, Bluesky, GitHub Release)

    A long release-candidate period was nice, caught a few bugs, but was mostly blocked on temporal-polyfill's tree-shakeable API reaching 1.0 (See on X, Bluesky, GitHub Release)

  26. stephenoldham commented on Jun 19, 2026

    @stephenoldham

    @arshaw Well done dude! Seems like it's been a major undertaking, so well done for getting through all the work. Super appreciated 👏🏼🔥

  27. pfpro commented on Jun 19, 2026

    @pfpro

    congratulations!

  28. roelkoopsvz commented on Jun 19, 2026

    @roelkoopsvz

    Thank you for all the hard work you've put into v7, Arshaw! Keep up the great work!

  29. AlaricCoco commented on Jun 19, 2026

    @AlaricCoco

    🎉Thank you for all your hard work getting this released! 🥳

  30. david-rab-thunder commented on Jun 24, 2026

    @david-rab-thunder
  31. locked and limited conversation to collaborators on Jul 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions