3 hours ago
KaTeX

v0.18.6

0.18.6 (2026-09-05)

Bug Fixes

  • array: preserve tags on empty final rows (#4277) (02d552c)
6 hours ago
tabler

Tabler v1.5.0

Tabler 1.5

Tabler 1.5 is out. It's the biggest release we've done, with more than 250 changes across the framework, the demo pages and the docs. The sidebar folds now. Cards can have gradients, backgrounds can have patterns, charts got seven new types, and the demo comes with two new dashboards. Bootstrap also moved into the Tabler source tree, and that's where a lot of the smaller changes in this release come from.

Folded sidebar

The vertical sidebar can fold down to a narrow strip of icons with navbar-folded. With navbar-folded-hover it stays folded and opens when you hover over it. Submenus open as flyouts next to the icon, and there's a pin toggle if you want to keep the sidebar open.

Two smaller things came with it. Section titles in the sidebar (nav-section-title) turn into short separators while it's folded, so you don't lose the grouping. And there's a new navbar-footer zone for the user block at the bottom. The navigation scrolls between the pinned brand and the pinned footer.

The sidebar is also light and 16rem wide by default now.

Layout settings

The theme panel does more than light and dark now. It also switches the layout, through four attributes you can set on <html> yourself: data-bs-layout for the container width (default, fluid, boxed), data-bs-navbar-position for whether the page shows the vertical or the horizontal navigation, data-bs-navbar for a sticky top bar, and data-bs-navbar-theme for coloring the navigation dark or primary. The folded sidebar has its own data-bs-sidebar.

The panel itself was redesigned around them, with an illustrated intro, color scheme presets and thumbnail tiles for most settings. A Customize entry in the sidebar footer and in the navbar opens it.

Gradient cards

.card-gradient gives a card a gradient background. There are variants for each theme color, modifiers for the direction, and an animated version.

The gradient stops are plain utilities, so you can use them anywhere else too. .bg-gradient-from-*, -via-* and -to-* now also take transparent and -inverted.

There's a new Card gradients page in the demo with all the combinations.

Background patterns

Backgrounds can have a pattern now. Dots, grids, stripes and a few more, through a set of .bg-pattern-* utilities.

You can also control how strong the pattern is. --tblr-pattern-opacity-factor scales the opacity globally, and .bg-pattern-opacity-* sets it per element.

New chart types

Seven chart types joined the demo and the docs: radar, polar area, treemap, timeline, box plot, bubble and funnel. There's also a new Advanced charts page for the harder cases, with two y-axes, annotations, a zoom brush and synced chart groups.

Chart colors aren't hardcoded per chart any more. There's a --tblr-chart-1 through --tblr-chart-5 palette wired into the ApexCharts theme tokens, so charts generally follow the current color mode on their own. ApexCharts itself went from 3.54.1 to 7.0.0.

New dashboard pages

Two dashboards joined the demo. One is a CRM dashboard built from reusable cards, the other a crypto dashboard with a portfolio overview, market data and order history.

There's also an onboarding page, a task list and a pay page, plus four new modals: change password, confirm delete, edit profile and new task.

Upgrading

Bootstrap 5.3.8 now lives in the Tabler source tree as Sass modules and TypeScript components, so Tabler doesn't depend on the Bootstrap package any more. A few other things changed along the way:

  • The npm package ships TypeScript declarations, so import { Modal } from "@tabler/core" is typed.
  • The default color mode is auto and follows the system setting.
  • Tabler doesn't bundle a web font any more. The default stack is the system one, so nothing gets downloaded.
  • Components accept data-tblr-* attributes next to data-bs-*.
  • The supported browsers are now Chrome 123, Firefox 128 and Safari 17.5, which is what the CSS actually needs.
  • The Turbo integration is gone, along with a number of unused Sass variables.

Every breaking change is in the Upgrade to 1.5 guide, with a before and after example for each one.

Core changes

  • 9ea657b: Added .text-gray-50 through .text-gray-950 utility classes alongside the existing .bg-gray-* utilities.
  • 100a37b: Added background pattern utilities and documentation, including updated preview demos.
  • 9d5c83f: Added Bootstrap 5.3.8 to the core source tree, with SCSS as modules and components converted to TypeScript.
  • e1ecd39: Updated the supported browser baseline to what the CSS needs: Chrome 123, Firefox 128, Safari 17.5.
  • 9c5d729: Added .btn-ghost button variant with transparent background and hover effects.
  • ec94693: Added .card-gradient component with gradient variants, direction modifiers, and animated backgrounds.
  • 324b0fb: Added --tblr-card-header-bg and --tblr-card-footer-bg variables so both backgrounds can be overridden independently.
  • 09d419a: Added a --tblr-chart-1--tblr-chart-5 palette and wired ApexCharts theme tokens, so every chart follows the color mode.
  • d2c1271: Added TypeScript declarations to the npm package, so import { Modal } from "@tabler/core" is typed.
  • 9d5c83f: Added support for data-tblr-* attributes alongside data-bs-* for dropdown and other components.
  • bf9e7ad: Added Driver.js to libs.json and dist/libs for product tours.
  • bf9e7ad: Added --tblr-dropdown-item-gap, --tblr-dropdown-item-icon-size and --tblr-dropdown-item-icon-color to .dropdown-menu.
  • 4f6e99b: Added a folded sidebar (navbar-folded, navbar-folded-hover) with flyout submenus, a pin toggle and a light 16rem sidebar by default.
  • 70f996b: Added the .font-sans-serif, .font-serif and .font-comic utilities next to .font-monospace.
  • d2c1271: Added .bg-gradient-{from,via,to}-transparent and -inverted gradient stops, which the gradient docs already described.
  • 5baf073: Added 74 new payment provider icons imported from tabler-payments and removed 12 outdated providers like dotpay and solo.
  • 5e119d4: Added bg-blur utility and increased container-tight width for layout flexibility.
  • 70f996b: Added the data-bs-layout, data-bs-navbar-position, data-bs-navbar and data-bs-navbar-theme layout settings.
  • 0c79963: Added media-print mixin and print styles to hide interactive components during printing.
  • 48dbd1e: Updated the core build system from Rollup to Vite, with identical UMD and ESM output.
  • 4ce08ca: Updated the navbar-side component and reorganized its apps, language, notifications and user sections.
  • 70f996b: Added .navbar-side support in the vertical navbar: a wrapper for a trailing .navbar-nav group pinned to the bottom of the menu.
  • f11ece4: Added --tblr-pattern-opacity-factor and .bg-pattern-opacity-* utilities for background patterns.
  • cad8eb8: Removed the $prefix Sass variable; the --tblr- prefix is now applied at build time by PostCSS.
  • 9c5d729: Added Progress Background component with text labels and value display.
  • 9c5d729: Added .progress-lg and .progress-xl size variants for the progress component.
  • 9c5d729: Added Progress Steps component for step-by-step navigation indicators.
  • bea97f8: Removed @hotwired/turbo integration, including .turbo-progress-bar styles and the Turbo loader preview demo.
  • 8962710: Removed unused SCSS !default variables, which now raise a Sass error when set via @use ... with (...).
  • 9820d11: Updated core SCSS to the Sass module system with @use and @forward.
  • 4f6e99b: Added nav-section-title group labels to the vertical sidebar, shown as short separators in the folded state.
  • 4f6e99b: Added a navbar-footer sidebar zone with a user block; the sidebar nav scrolls between the pinned brand and footer.
  • ff24af9: Updated the default $font-family-sans-serif and $font-family-monospace to the system font stacks. Tabler no longer bundles a web font, so no font files are downloaded.
  • 9dd26fd: Changed the default theme of tabler-theme.js to auto, following the system color scheme.
  • 7556ae2: Added an auto color mode to theme settings with system prefers-color-scheme support.
  • e3d86c5: Updated apexcharts from 3.54.1 to 7.0.0 and added --chart-{id}-color-{index} variables.
  • 1effe22: Fixed invisible keyboard focus indicators and added prefers-reduced-motion and forced-colors support.
  • 09d419a: Documented the ApexCharts dual license, which applies to the copy shipped in dist/libs, in the readme and chart docs.
  • 080d3aa: Fixed the ApexCharts tooltip arrow staying white on the dark tooltip by setting the --apx-tt-bg and --apx-tt-border tokens.
  • ffe3489: Updated .badges-list to .badge-list and .tags-list to .tag-list, keeping the old names as deprecated aliases.
  • 059bae1: Updated Bootstrap exports to a single source of truth in bootstrap.js and removed the duplicates from tabler.js.
  • 4f6e99b: Moved btn-floating to the end side of the screen, so it does not cover the sidebar.
  • 5018aa9: Fixed .btn-icon to be square by aligning min-width calculation with base .btn formula.
  • a508bb6: Updated hardcoded rem and px values to SCSS variables across core components for easier theming.
  • c71a321: Updated the @tabler/core README with package usage, optional stylesheets, Sass setup and browser support.
  • a0d84f6: Updated the npm package README with badges, quick links, CDN usage, documentation and changelog links.
  • c860288: Fixed icon alignment for .btn-sm and .btn-xl sizes.
  • 1adb710: Fixed .alert-action and .alert-link colors inside .alert-important so links stay readable.
  • 2dc7eda: Updated $border-color-translucent-dark to rgba(128, 150, 172, 0.2) for better dark mode visibility.
  • 09ab0bc: Fixed disabled buttons falling back to currentColor for the border and to a transparent background.
  • febfa9f: Fixed the missing focus ring on buttons and btn-check button groups by using the shared focus ring token.
  • 8324701: Fixed .card-header background being overridden by a background: transparent shorthand.
  • 0187b26: Fixed the card-status-* strips leaving a thin line over the card border and a mismatched corner radius.
  • 70ec683: Fixed card corner radius in tab layouts when tabs sit above or below tab content.
  • c1e1fdf: Fixed the corner radius and the double bottom border on the first and last rows of a table inside a .card.
  • de44d61: Fixed .card-tabs .nav-tabs sharing z-index with .dropdown-menu, which hid dropdowns behind card tabs.
  • 6414238: Fixed barely visible checkbox and radio borders in dark theme by using $input-border-color.
  • b1d49e9: Fixed CountUp to parse formatted number targets and avoid double-start when enableScrollSpy is enabled.
  • 09d419a: Fixed chart colors in dark mode: axis lines and ticks, marker and treemap outlines, and the tooltip title.
  • 070248d: Fixed dark mode link contrast: --tblr-link-color is now a lighter tint of --tblr-primary on dark surfaces.
  • 601e950: Fixed dark mode text selection contrast with a new $selection-bg Sass variable.
  • d0a793c: Fixed the disabled form control background in dark theme with a new --tblr-bg-forms-disabled variable.
  • b1d49e9: Fixed dropdown data-bs-boundary="viewport" to use document.documentElement instead of the first .btn element.
  • c527135: Fixed .input-icon inline-start padding for .form-select.
  • 70f069c: Fixed .form-select keeping its default box-shadow inside .input-group.
  • 9c78cf6: Fixed .bg-gradient conflicts that broke from/via/to rendering and updated the gradient docs.
  • bc24b3a: Fixed --tblr-gray-*-fg tokens to map directly to --tblr-gray-* instead of contrast-based fallbacks.
  • c8b8b24: Fixed gray theme custom properties output using SCSS interpolation and updated default $body-color to $gray-500.
  • 70193fe: Fixed .icon-pulse, .icon-tada and .icon-rotate not animating webfont icons.
  • f0b909d: Fixed the sm and lg size mismatch between form controls, buttons and input groups.
  • 6e656ad: Fixed .input-icon-addon z-index issue with form validation feedback and added default height.
  • b1d49e9: Fixed input mask lazy option to read data-mask-visible via dataset.maskVisible.
  • fc16b6a: Defined --tblr-body-text-align, --tblr-nav-link-font-size and --tblr-nav-link-active-color, which the css already read.
  • a883531: Fixed .list-group-item-{color}: the palette colors had no styling at all and no variant had its background.
  • 9dd26fd: Fixed the markdown table header keeping its surface background instead of going transparent.
  • 9d04e14: Fixed the marketing hero, browser and shape components reading custom properties nothing defined.
  • 9dd26fd: Fixed offcanvas-narrow, which had no effect on the width of the panel.
  • f5f75d4: Fixed print styles: hidden navbar/sidebar, forced light color-scheme, and avoided breaking .card/table rows.
  • 1da70a7: Fixed ScrollSpy throwing on target ids that start with a digit, such as headings like 1. Setup.
  • 464a522: Fixed oversized and mismatched validation icons on .form-select and Tom Select selects.
  • 8bc6fa7: Fixed status color classes to use CSS variables and to include the social colors.
  • c527135: Fixed .steps horizontal overflow on small screens by enabling scrollable overflow below the sm breakpoint.
  • cd0b210: Fixed the typographic .steps rule leaking its guideline and spacing onto the .steps component.
  • 90c42f2: Fixed Tom Select's .ts-dropdown losing its z-index, background, and colors to the bootstrap5 preset CSS.
  • 6849337: Fixed Tom Select styles to use --tblr-* variables instead of undefined --bs-* references.
  • e206d7a: Fixed white space next to the scrollbar by using scrollbar-gutter: stable on html.
  • bf9e7ad: Updated .flag to size by width with $border-radius-xs on xs, and narrowed tooltip padding-x to spacer-2.
  • b8b63d7: Fixed Sass mixed-declaration warnings in the navbar, card, nav and table styles.
  • 9432835: Updated SCSS files to use the border-radius mixin.
  • 9c5d729: Updated stroke-width for .icon-sm from 1 to 1.5 for better visibility.
  • bf9e7ad: Updated .input-group-flat addons to drop the inner border and sit above the control.
  • fa678a7: Updated root color tokens to use CSS light-dark() so paired values live in one :root declaration.
  • 7ae422f: Updated core SCSS to logical properties and a --tblr-dir multiplier, so RTL works with plain tabler.css.
  • 301e778: Updated rgba() calls to the modern color-mix() and color-transparent() functions.
  • 9dd26fd: Fixed the avatar corner radius inside .form-imagecheck-image and set .nav font size to the body font size.
  • 4f6e99b: Fixed the navbar-toggler icon: the middle bar was flex-squeezed, breaking the open-state X and shortening the hamburger.
  • 9c5d729: Added smooth transitions for progress bar width and background-color changes.
  • 1489b13: Added .prose alias for markdown content and updated preview/docs references and redirects.
  • f35aab3: Added the same border and radius to figure images as plain images in .prose and .markdown content.
  • 66dc336: Fixed the caret() mixin by restoring $caret-width to 0.36em.
  • 70f996b: Fixed the sidebar marking two items as selected: a group holding the current page is now emphasized, not filled.
  • 70f996b: Fixed the vertical navbar brand sitting at the far edge on small screens when nothing follows it in the top bar.
  • 9c5d729: Updated skip-link to use visually-hidden for improved accessibility.
  • 346e091: Fixed oversized dist/libs by copying only the runtime files each library declares in libs.json.
  • d2c1271: Fixed tabler-theme.js replacing a server-rendered data-bs-theme when the visitor has no stored choice.
  • 736e604: Updated deprecated global Sass functions to module equivalents (map.merge, string.slice, math.percentage, etc.).
  • b8b63d7: Updated Bootstrap to v5.3.8.
  • 9c5d729: Updated trending component to use arrow-up/arrow-down instead of trending-up/trending-down.
  • 70ec683: Updated $card-status-size default from $border-width-wide to 3px.
  • 666ccd6: Updated shadow tokens (--tblr-shadow-*) to use the new xs2xl and overlay values.

Demo changes

  • 09d419a: Added a charts-advanced page and docs for two y-axes, chart annotations, a zoom brush and synced chart groups.
  • 5e119d4: Added Pay page with dedicated layout, navigation link, and card/PayPal payment form.
  • d8956a0: Updated the preview and docs packages to build with Astro instead of Eleventy.
  • ec94693: Added new card-gradients page showcasing various gradient card styles and components.
  • b0fa655: Added Change Password modal with a strength indicator, confirm validation and show/hide toggles.
  • ad22d04: Added a color palette to the signature pad component for selecting the pen color.
  • b0fa655: Added Confirm Delete modal with a warning icon and a checkbox that enables the delete button.
  • 62178f8: Added new dashboard-crm page with reusable CRM cards.
  • 4ce08ca: Added new Crypto Dashboard page with cryptocurrency portfolio overview, market data, and order history.
  • 118ca4b: Updated the demo pages to show their title and description in the page header, with pageHeader falling back to title.
  • b0fa655: Added Edit Profile modal with avatar upload, personal information fields, social links, and date of birth.
  • 8d8727f: Added language selector dropdown to navbar with flag indicators for multilingual support.
  • 70f996b: Added layout options to the theme settings panel and removed the dead demo script and the layout-combo page.
  • 4ce08ca: Updated the page-menu structure for dashboards and reorganized the navigation menu.
  • 09d419a: Added radar, polar area, treemap, timeline, box plot, bubble and funnel chart types to the charts preview and docs.
  • b0fa655: Added New Task modal with fields for task name, description, assigned user, priority, due date, and category tags.
  • 9c5d729: Added new onboarding page with progress indicator and navigation layout.
  • 118ca4b: Removed the actions preset prop from DefaultLayout; pages now fill a page-header-actions slot instead.
  • cc298a6: Added a PageTitle component and used it with CardSubtitle in place of raw .page-title and .card-subtitle markup.
  • 5363668: Added the missing Prose demo page, linked from the menu but not previously built.
  • 83ec6f8: Added Tour demo page using Driver.js for product tours and onboarding guides.
  • d7cbe87: Added color and vertical props to the Steps component and used it on the steps preview page.
  • 09d419a: Added a straight line chart demo and set stroke-curve to straight on the line and area demos, so the spline ones differ.
  • 99b9ea4: Added a Task List page with tasks grouped by status and a modal for adding new tasks.
  • 1effe22: Fixed keyboard access by turning JavaScript-only <a href="#"> controls into real <button> elements.
  • 1effe22: Added missing ARIA roles and states to Pagination, NavSegmented, Accordion, Steps, tabs, Modal, Offcanvas and CarouselCard.
  • 1effe22: Added aria-label to the Datepicker navigation buttons and made the Dropzone upload area keyboard-operable.
  • 1effe22: Added <fieldset> and <legend> around radio and checkbox groups so screen readers announce the group purpose.
  • 1effe22: Fixed form accessibility with matching for/id labels, aria-invalid, aria-describedby and autocomplete tokens.
  • 1effe22: Fixed the skip link to appear on focus and added missing <main> and labelled <nav> landmarks.
  • 1effe22: Added a label prop to Flag, Payment, StatusDot, Trending and Avatar status badges for screen readers.
  • 0fd35c3: Updated the active-users-2 card chart to use chart-id="active-users-2" with height="11" for a more compact layout.
  • 1adb710: Added action and link examples to the important alerts in the alerts preview and docs pages.
  • 8704725: Fixed root-absolute Button hrefs in demos, so error-page links work in the downloadable package.
  • da11f08: Added a short description and a docs link to each card on the Buttons demo page, grouped into Styles and Colors.
  • 118ca4b: Fixed heading order by making CardTitle and CardHeader render h2, so cards no longer skip a level under the page h1.
  • 632b69f: Updated the changelog page to redirect to tabler.io/changelog instead of rendering CHANGELOG.md.
  • 09d419a: Removed dead chart options (groups, spline, fill, debug, remove-padding, show-labels) from charts.json.
  • 4ce08ca: Added crypto-markets.json and crypto-orders.json data files for the crypto dashboard.
  • 70f996b: Unified the Customize entry: the navbar and the sidebar use the same .navbar-side button with the brush icon.
  • b3e873a: Fixed the value key in selects.json not preselecting options in the demo selects on the modals and form elements pages.
  • 8704725: Updated preview and docs examples to the unified demo component props: variant, color, size, ariaLabel.
  • 0f8dcb0: Updated preview and docs to use the shared date-format, string-format and pseudo-random helpers.
  • 09d419a: Fixed the combination chart demo so it mixes columns and lines instead of drawing plain bars.
  • 3cca8bf: Fixed task cards not showing their due date and removed dead props and classes such as fluidSearch and text-*-lt-fg.
  • 3f1ad9d: Fixed the navbar not highlighting the active page for nested, RTL and settings pages.
  • f2004da: Fixed payment icons on the all-elements page by rendering separate light and dark variants.
  • 9dd26fd: Removed the non-existent mt class from the placeholder card.
  • 1da70a7: Fixed the marketing footer layout, timeline social icons, missing alt and aria-label attributes and invalid nesting in demos.
  • f2004da: Fixed the ribbon example background on the all-elements page to use var(--tblr-bg-surface-secondary).
  • 1adb710: Fixed the sign-in cover page in dark mode by replacing bg-white with bg-surface.
  • c7e895b: Updated the footer to show the version link everywhere and the Generated timestamp only on preview builds.
  • ac87b76: Updated preview templates to replace deprecated font-weight-* classes with Bootstrap-compatible fw-* utility classes.
  • 8704725: Fixed icon-only demo buttons rendering a generic aria-label="Button" instead of a real label.
  • 25f466b: Updated the icon count on the icons pages to read from icons-info.json, so it follows the installed version.
  • 8f86f1f: Restored the import-icons and import-illustrations scripts.
  • 5363668: Made Interface demo pages consistent with the Buttons page: card subtitles, one docs link, responsive grids.
  • 8704725: Updated the marketing CTA Learn more button to the .btn-ghost style.
  • 70f996b: Removed aria-current="page" from menu groups, so only the link to the current page carries it.
  • 7cadbb8: Updated New badges in menu.json to mark only pages added since 1.4, and dropped them from older pages.
  • 8947d7c: Updated the activity feed messages in activity.json and the activity preview page.
  • 863884e: Added DocsLink to the header of 20 more demo pages, including Cards, Charts, Tables and Typography.
  • b90554b: Moved the import:icons and import:illustrations scripts to the repository root, next to import:payments.
  • f35aab3: Added a Tabler Payments docs section with @tabler/payments-* package pages for React, Vue, Preact and Astro.
  • 38df58d: Added the 500 illustration to the preview 500 error page.
  • d2c1271: Removed classes that no stylesheet defines from demo markup and added the onboarding and settings plan pages to the menu.
  • 118ca4b: Added a meta description tag, filled from the page description prop.
  • 7305d84: Fixed Vercel deployment to serve error-404.html as the custom 404 page.
  • 43eee38: Added Progress Step component documentation and cleaned up the progress steps preview markup for cleaner rendered output.
  • 09d419a: Replaced the placeholder chart data on the charts page and in the chart docs with realistic series, and titled every demo card.
  • da11f08: Replaced lorem ipsum with unique placeholder text on the Scroll spy demo page and fixed its menu highlight.
  • 70f996b: Added a Customize entry to the sidebar footer that opens the theme settings panel.
  • 70f996b: The sidebar now always renders the user block, so the vertical layout keeps the profile menu on every page.
  • 552cf1f: Removed the <lastmod> element from sitemap.xml, which carried the build time instead of a content date.
  • da11f08: Reorganized the Star Ratings demo page into Basic/Icons/Sizes and Colors cards with short descriptions.
  • 70f996b: Redesigned the theme settings panel with an illustrated intro, color scheme presets and thumbnail tiles for most settings.
  • bd35fd3: Fixed responsive layouts on the Form Elements page.
  • 53f5244: Updated the Illustration and Empty components to accept only the bundled illustration names, checked at build time.
  • ee4c88f: Updated @tabler/icons to v3.46.0.
  • 369322a: Updated Tabler Illustrations to v1.17.0 with 25 new illustrations.
  • c707018: Added an All Elements page showing every UI component and Bootstrap element.

Docs changes

  • 4a97921: Added Accordion documentation page with usage variants and Bootstrap collapse behavior examples.
  • f5f75d4: Added a Printing docs page covering d-print-* utilities and the media-print mixin.
  • 3277fa0: Added Astro icons library documentation page for the new @tabler/icons-astro package.
  • 73f7c2a: Added Accept: text/markdown content negotiation for docs pages, with q-value parsing and 406 responses.
  • 9dd26fd: Added an Accessibility section to every UI documentation page.
  • d2c1271: Added a Background blur page, gray utilities on the colors page and a language selector section on the navbars page.
  • 135f38d: Added Info, Tip, Warning, Danger and Note callouts, usable in any MDX page, with a reference page under Resources.
  • 9dd26fd: Added installation and usage sections to the chart and countup pages, covering the .chart-* size classes and sparklines.
  • 9dd26fd: Added a class reference table to every component page, from the new classnames front matter.
  • 6e6084a: Added docs pages for the Datepicker and Tom Select form plugins, form-datepicker and form-select-tomselect.
  • 9dd26fd: Updated the docs layout: elevated article panel, rounded sidebar navigation, "On this page" rail and restyled prev/next links.
  • 9dd26fd: Listed every component class in llms.txt, from the classnames front matter.
  • 73f7c2a: Added a llms-full.txt page with all docs in one file, Content-Signal in robots.txt and markdown Link alternate headers.
  • 9dd26fd: Added a source link and a copy-as-markdown button, and moved the class reference to the end of the page.
  • 9dd26fd: Added classnames to the social icons and flags pages.
  • 9dd26fd: Rewrote the autosize, range slider, WYSIWYG and dropzone plugin pages with installation, usage and accessibility sections.
  • 9dd26fd: Expanded the social icons, payments, vector map, inline player, PDF, EPS, illustrations preview and references pages.
  • 9dd26fd: Documented avatar-square, mention, offcanvas-narrow, btn-floating, card-cover, td-truncate and other variants.
  • 416ca63: Added framework integration guides for Laravel, React, Next.js, Vue, Angular, Nuxt, Symfony, Django, Rails, SvelteKit, and Astro.
  • 1adeb68: Added a Docs for LLMs page explaining llms.txt and the .md page mirrors, with a sidebar link.
  • 9dd26fd: Removed the EPS icons page, since @tabler/icons-eps is no longer maintained.
  • fb3d7dc: Added an RTL support docs page covering the dir="rtl" attribute, the published *.rtl.css builds, how rtlcss generates them, and which utility classes are direction-aware.
  • bd4e381: Added Star Rating documentation page with static and interactive rating examples based on existing classes.
  • 8af57f9: Added Tag documentation page with examples for icon, media, badge, checkbox, and list usage.
  • 7b64726: Added a Theme base colors page documenting the five data-bs-theme-base gray palettes in tabler-themes.css.
  • f4c514a: Added an Upgrade to 1.5 page with the breaking changes, renamed classes and Sass updates from 1.4.
  • 2a06640: Added added-in badges to Card gradient, Progress steps and new getting-started guides; fixed background patterns' version.
  • 46da1f7: Updated background patterns documentation with missing pattern variants, transparent utility usage, and size coverage.
  • 1ec82d0: Updated the contributing guide, README and Docker setup for the Astro-based development toolchain.
  • 38df58d: Added the not-found illustration and a search button to the docs 404 page.
  • 9dd26fd: Documented card status, progress, actions, subtitle, surfaces, scrollable body, tables, links and overlays.
  • 9dd26fd: Fixed highlighted code blocks using hardcoded colors instead of the Tabler surface tokens.
  • 9dd26fd: Fixed the copy button in docs examples to be a button with an accessible name.
  • 684f40e: Updated the documentation to explain font sizing and system color CSS variables.
  • 9dd26fd: Fixed docs example code blocks gluing inline elements like <label> and <input> onto one line.
  • 9dd26fd: Added a dark background option to the docs <Example> component.
  • 9dd26fd: Updated docs examples to use the <Icon /> component and consistent Prettier formatting.
  • d2c1271: Fixed duplicate ids and missing targets in the modal, offcanvas, page headers and page layouts examples.
  • 9dd26fd: Fixed keyboard access in docs examples for carousel controls, disabled links, btn-loading and progress bars.
  • 9dd26fd: Fixed install snippets pointing at urls that do not resolve on the vector map, inline player and icon pages.
  • 9dd26fd: Fixed docs examples using classes that do not exist, such as alert-facebook, btn-close-white, bg-gray, btn-xs, alert-title and hr-text-center.
  • 9dd26fd: Added tooltips and accessible names to the footer icon links.
  • 9dd26fd: Stacked form docs examples in a column and tightened the sidebar nested menu indent.
  • 9dd26fd: Moved the form pages backed by a third-party library into the Plugins section.
  • 9dd26fd: Renamed form docs pages without the form- prefix and flattened the Illustrations and Emails sections.
  • a0d84f6: Updated the How to Contribute guide with starter issues, Codespaces setup, commands and PR conventions.
  • f35aab3: Added Introduction pages with quick starts and cover images to the Icons, Illustrations, Emails and Payments docs sections.
  • 1ec82d0: Fixed documentation formatting issues: heading hierarchy, missing image alt texts and broken list structure across docs pages.
  • 9dd26fd: Split the getting started menu group into Getting started and Resources.
  • 9dd26fd: Updated the docs navbar to use container-lg.
  • 4afc2ea: Updated the prose on 75 docs pages to plain English, shortened the page summaries and merged duplicate sections on the button and card pages.
  • 9dd26fd: Moved components that need a third-party library into the Plugins section.
  • 9dd26fd: Moved the Website, Preview and Support links from the docs sidebar to the top navbar.
  • 9dd26fd: Restyled the related and prev/next cards, and moved prev/next below the article panel.
  • 9dd26fd: Restored the docs.scss source for the docs styles, compiled with Sass instead of a checked-in docs.css.
  • 9dd26fd: Fixed the search modal using the Algolia palette instead of Tabler colors, including an unreadable selected result.
  • 9dd26fd: Darkened the docs sidebar links, kept rows to one line and added a visible focus ring.
  • c430cfe: Updated UI component docs to singular file names and frontmatter, with redirects from plural routes.
  • 826a073: Added sitemap.xml and robots.txt endpoints for the docs site and fixed docs layout title rendering outside production.
  • 2f8f495: Fixed the docs header not staying sticky, and the table of contents sliding under it.
  • 9dd26fd: Documented sortable headers, selectable rows, stacked mobile tables, and outline, dot and icon-only badges.
  • 9dd26fd: Rewrote the timeline and datagrid pages with markup, variants and accessibility notes.
  • 9dd26fd: Fixed plugin demos showing their stock styles, because library CSS loaded after tabler-vendors.css.
  • ee4c88f: Updated @docsearch/js and @docsearch/css to v5 and kept the docs search on the keyword-only entry point.
  • 1adeb68: Fixed html comments in docs code examples running into the closing tag of the element before them.
  • 09d419a: Fixed the small chart example on the chart docs page, which shared an element id with the line chart example and stayed empty.
  • c547329: Fixed the Plugins card on the docs homepage linking to a 404 /plugins route instead of /ui/plugins.
  • 1da70a7: Fixed the docs logo link name, dead example links in the navbar and offcanvas pages, and the vector map error on its plugin page.
  • ee4c88f: Fixed docs pages with callouts falling back to their MDX source in llms.txt instead of the rendered examples.
  • c71a321: Fixed the Sass import in the framework guides to use @use instead of the deprecated @import.
  • 70f996b: Documented the layout theme settings on the color modes and page layouts pages.
  • 1adeb68: Fixed the .md docs mirrors showing component tags like <Icon /> instead of the rendered html.
  • 08cad98: Updated the Progress Bar documentation with new variants and full-width stacked previews.
  • 4d04c10: Removed the unused bootstrapLink front matter field from DocsLayout, DocsMdxLayout, and all docs pages.
17 hours ago
fullcalendar

v7.1.0

Event Rendering

  • PERF: DayGrid with large number of events, when dayMaxEvents:true (limited by natural row height), only a necessary subset of events will be DOM-inserted, not all
    • BREAKING: As a result, a subset of events will be run through event render hooks like eventContent
  • DayGrid event slicing
    • FEATURE: Better event packing, including smarter positioning decisions for fewer slices
    • FEATURE: Related slices have more similar y-coordinates
    • FIX: Events unnecessarily going to +more link when higher-level slot would accommodate
  • TimeGrid event positioning
    • FIX: Events with custom ordering and eventOrderStrict:true can overlap with slotEventOverlap: false (#7914)
    • FIX: Overlapping events can have tiny width when event content not visible (#7879)
  • FIX: In Timeline and TimeGrid, when custom eventOrder, DOM order respects start-time first, then eventOrder. Better for a11y and tabbing through events sequentially
  • FIX: React StrictMode: DayGrid events permanently invisible (#8088)

Resource Views

  • FIX: Timeline view, smoother virtualized fast scrolling, especially with trackpad and especially while scrolling up with irregular height resource rows
  • FIX: Timeline view, account for DST in timeslots (#7620)
  • FIX: Resource TimeGrid/DayGrid, filterResourcesWithEvents should exclude columns (#6149)

Print Rendering

  • FEATURE: Print renders business-hours for print-previews that enable it
  • FIX: Better page-wrapping of tall DayGrid rows with many events
  • FIX: Better page-wrapping of tall Resource-Timeline rows with many events
  • FIX: Events are not visible when we print using window.print() (#8097)

Misc

  • PERF: General improvements with option-changes. Users of @fullcalendar/preact must upgrade their preact peer dependency to >=10.29.8
  • FIX: Screen-reader improvement for Resource-Timeline timeline header text
18 hours ago
zip.js

v2.11.1

What's Changed in v2.11.1

Bug fixes

  • A failure inside the WebAssembly codec is now reported as the error it is instead of surfacing as RangeError: offset is out of bounds. The deflate_process, inflate_process and inflate9_process functions pack the number of bytes produced in the low 24 bits and the zlib status code in the top byte, but their two error paths returned a bare negative code, read as 16777214 bytes produced and copied out of the module heap into a 64KB buffer. Reaching it takes the codec running out of its fixed 16MB heap, which needs useCompressionStream and useWebWorkers both set to false, so that every entry shares one module instance, and maxWorkers raised above the number of streams the heap holds, 42 measured when compressing at level 6
  • The compress direction of the WebAssembly codec now checks the status code the codec returns, which only the decompress direction did. A failed deflate() reports no byte produced and no byte consumed, which the loop reads as the end of the data, so the rest of the entry was dropped without an error. The status is also checked before the number of bytes produced is used, so a status code can no longer be read as a byte count whatever the codec returns

Tests and continuous integration

  • New test asserting that the vendored WebAssembly module packs its error codes the way the codec expects. The module is vendored as a binary, so nothing else in the suite would notice it being re-vendored stale
20 hours ago
zip.js

v2.11.0

What's Changed in v2.11.0

Breaking changes

  • ERR_INVALID_CRC32 and ERR_INVALID_AUTHENTICATION_CODE now hold distinct values, "Invalid CRC32" and "Invalid authentication code". Both were aliases of ERR_INVALID_SIGNATURE since v2.8.44, added as aliases so the two errors could be told apart later without breaking the code comparing them at the time. ERR_INVALID_SIGNATURE is removed, the term naming a CRC-32 check and an AES authentication code, neither of which is a signature. Code comparing an error message to it must now compare to the constant naming the check that failed
  • The externalFileAttribute and internalFileAttribute names are removed, from the entry properties and from the writer options. They were renamed to externalFileAttributes and internalFileAttributes in January 2025 and kept as aliases since. The other names deprecated in the 2.8 releases are kept. The minified files shrink by 354 bytes

Bug fixes

  • Deflate64 entries are no longer refused when a match at least as long as the 64KB output buffer of the WebAssembly codec starts on its boundary. The codec then fills a whole buffer without consuming any input, which was read as the end of the data: the rest of the chunk was dropped, and the entry failed with a Z_BUF_ERROR at the default chunk size, or with an invalid uncompressed size when the chunks were small enough for the loss to pass unnoticed until the end. Only Deflate64 allows such a match, its maximum length being 65538 bytes against the 258 of Deflate, and 7-Zip does not produce one, its Deflate64 encoder capping the matches at 257 bytes. The JavaScript codec was unaffected
  • The JavaScript codec no longer corrupts the data when a match wraps around the end of the sliding window and ends inside it. The bytes were then copied from the output buffer instead of the window, which needs more than 32KB already decompressed and a match straddling the wrapping point. deflate and gzip reported the corruption as an invalid checksum, deflate-raw returned the expected number of bytes with a few of them wrong. The entries of a zip file are read as deflate-raw and checkCrc32 is not set by default, so the wrong bytes were returned with no error at all. The codec is the one the index-native and legacy builds use, including to read Deflate64

Performance

  • The WebAssembly codec is now built from Chromium's fork of zlib, which reads 20% faster and writes 6 to 8% faster. The compressed output is unchanged, byte for byte, at every level. The module grows by 1592 bytes. The codec is used when the CompressionStream API is unavailable or turned off with the useCompressionStream option, and always when reading Deflate64 (#677)

Documentation

  • The keepOrder option no longer claims that setting it to true improves the use of web workers, which is the opposite of what it does. Keeping the order writes the entries one after another, so concurrent calls to add() compress one entry at a time. The remark now says so and points to bufferedWrite, which restores the concurrency while still keeping the order

Tests and continuous integration

  • New test covering a Deflate64 match starting on the boundary of the output buffer, in both codecs
  • New test covering a match wrapping around the end of the sliding window of the JavaScript codec, in both codecs
  • The test pinning the attribute names now covers the precedence of the entry options over the writer options instead of the removed aliases

Credits

  • Thanks to @xqdoo00o for reporting that Chromium's fork of zlib compresses faster than the one the WebAssembly codec was built from (#677)
21 hours ago
next.js

v16.4.0-canary.18

Misc Changes

  • Turbopack: fix source field in CSS sourcemaps: #88225
  • fix: track dynamic accesses in final runtime prerenders: #98255
  • docs: add API reference pages for skipProxyUrlNormalize and skipTrailingSlashRedirect: #97967

Credits

Huge thanks to @Xanaado, @lubieowoce, and @icyJoseph for helping!

22 hours ago
react-query

Release 2026-09-04 22:28

Release 2026-09-04 22:28

Changes

Features

  • solid-query: sweep X-Revalidate keys in the single-flight consumer (#11394) (f41ac714d) by @ryansolid

Packages

  • @tanstack/solid-query@6.0.0-rc.3
  • @tanstack/solid-query-devtools@6.0.0-rc.3
  • @tanstack/solid-query-persist-client@6.0.0-rc.3
22 hours ago
query

Release 2026-09-04 22:28

Release 2026-09-04 22:28

Changes

Features

  • solid-query: sweep X-Revalidate keys in the single-flight consumer (#11394) (f41ac714d) by @ryansolid

Packages

  • @tanstack/solid-query@6.0.0-rc.3
  • @tanstack/solid-query-devtools@6.0.0-rc.3
  • @tanstack/solid-query-persist-client@6.0.0-rc.3
22 hours ago
query

@tanstack/solid-query@6.0.0-rc.3

Patch Changes

  • #11394 f41ac71 - Sweep X-Revalidate keys in the single-flight consumer. A mutation can declare its invalidation scope with Solid's reload/redirect revalidate option; the flight payload covers what the server recomputed, and whatever a declared key matches beyond it (parameterized instances only the client holds, queries no loader owns) is now invalidated client-side — active queries refetch in the background, inactive ones are marked stale. Keys match by queryKey prefix, mirroring Solid Router's consumption of the same header.
22 hours ago
react-query

@tanstack/solid-query-devtools@6.0.0-rc.3

Patch Changes

  • Updated dependencies [f41ac71]:
    • @tanstack/solid-query@6.0.0-rc.3