Skip to content
CAI
Software that uses CAICheck a score

saadeghi/daisyui

47.9

Weak · 1 October 2026

34.6k

lines of production code

JavaScript

primary language

2

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is a CSS component library built on top of Tailwind CSS that provides a comprehensive set of pre-styled UI elements and utilities. It manages complex styling concerns such as theme definitions, CSS variable scoping, and specific browser rendering fixes to ensure consistent component behavior. The project also includes tooling for development workflows, build analysis, and automated preview generation to support integration and maintenance.

Features

Added daisyUI Report Logs viewer

A new static HTML-based log viewer has been added to the \packages/logs\ directory to visualize daisyUI build reports. The tool, titled 'daisyUI Report Logs', uses Alpine.js, Plotly, and daisyUI to display interactive bar charts comparing CSS metrics (such as raw vs. brotli size and selector vs. variable counts) across different build files. It allows users to load JSON report files, filter out specific files like themes or chunks, and navigate through a timeline of reports to analyze changes in bundle composition and size over time.

packages/logs · high confidence

Added daisyUI theme bundle files to the package

The \packages/bundle\ directory now includes \daisyui-theme.js\ and \daisyui-theme.mjs\, which bundle the daisyUI theme definitions and plugin logic for use in applications. These files expose the built-in themes (such as synthwave, dark, light, and cupcake) and provide a mechanism to apply them via CSS variables, allowing users to easily integrate daisyUI's styling system into their projects.

packages/bundle · high confidence

Major component CSS overhaul and new component additions

This release introduces a comprehensive rewrite of the component stylesheets in \packages/daisyui/src/components\, adding new CSS files for Alert, Aura, Avatar, Badge, Breadcrumbs, Calendar, Card, Carousel, Chat, Checkbox, Countdown, Diff, Divider, and Dock. The changes implement a new layering system (\daisyui.l1.l2.l3\) to improve CSS specificity and reduce style conflicts, alongside significant behavioral fixes for existing components such as improved RTL support, z-index corrections for drawers and modals, and fixes for Safari-specific rendering issues. New features include the Aura glow effect, the Diff image comparison tool, the Dock navigation bar, and enhanced customization for badges and alerts.

packages/daisyui/src/components · high confidence

New CLI tools for generating Tailwind Play share URLs and PR previews

Added two new Node.js scripts in the \packages/tailwind-play-share\ directory: \index.mjs\ and \pr-preview.mjs\. The \index.mjs\ script allows users to generate a Tailwind Play URL by providing HTML and CSS content via command-line arguments, files, or stdin, with options to specify a custom browser executable and timeout. The \pr-preview.mjs\ script automates the creation of preview metadata for pull requests by analyzing changes to daisyUI component CSS files, validating that the CSS does not contain unsafe directives (like \@plugin\, \@config\, or \@source\), and mapping these changes to corresponding documentation pages to ensure valid HTML examples are included in the preview.

packages/tailwind-play-share · high confidence

New glass utility and fixes for join, radius, and typography components

This update introduces a new \.glass\ utility class for creating frosted-glass effects using backdrop filters and gradients. It also adds comprehensive border-radius utilities (\.rounded-box\, \.rounded-field\, \.rounded-selector\) and enhances the \.join\ component with improved styling for joined items, including fixes for border overlaps, z-index stacking, and disabled states. Additionally, typography styles for prose are updated to include proper styling for inline code and keyboard (\kbd\) elements.

packages/daisyui/src/utilities · high confidence

Behavioural changes

Improved CSS class prefixing for complex selectors and variables

The \addPrefix\ function in \packages/daisyui/functions\ has been rewritten to correctly handle complex CSS selectors, including nested \:not(:has())\ and \:where()\ structures, as well as prefixed nested and type selectors. It now intelligently excludes specific Tailwind variables (like \--tw-\*\) and custom prefixes (such as \color-\, \size-\, \radius-\, \border\, \depth\, \noise\) from being prefixed, preventing style conflicts. This ensures that when users apply a custom prefix to daisyUI components, third-party classes (like calendar pickers) and internal utility variables remain unaffected, while component-specific CSS variables are correctly prefixed.

packages/daisyui/functions · high confidence

New and updated theme definitions with depth and noise effects

The \packages/daisyui/src/themes\ directory has been updated with new theme files (abyss, acid, aqua, autumn, caramellatte, silk) and revised definitions for existing ones (black, forest, light, dark, synthwave). These CSS files now include \--depth\ and \--noise\ variables to control visual texture and layering, alongside adjusted color palettes and border-radius settings for components like selectors, fields, and boxes.

packages/daisyui/src/themes · high confidence

Playground rebuilt with Vite and new component examples

The daisyUI playground has been migrated from Astro to a raw Vite setup, introducing a new development workflow that watches source CSS files and rebuilds them on the fly. This change adds several new example pages to the playground, including a comprehensive demo of core components (buttons, badges, inputs, alerts, etc.), a page showcasing all available components, and dedicated pages for testing light/dark themes, right-to-left (RTL) layout, and CSS class prefixing.

packages/playground · high confidence

Refactored base styles and introduced CSS custom properties for scroll and color management

The base styling layer has been reorganized into dedicated modules (reset, rootcolor, rootscrollgutter, rootscrolllock, scrollbar, svg, properties) to improve maintainability and allow selective exclusion of components like SVG noise. A new reset stylesheet provides a smaller, Tailwind CSS 4-compatible preflight. Scroll behavior is now managed via CSS custom properties (\--page-scroll-lock\, \--page-has-scroll\, \--page-scroll-bg\) to handle scrollbar gutters and backdrop darkening more robustly, addressing issues with background color bleeding and modal scroll glitches. Root color handling is standardized using \--root-bg\ and \--page-scroll-bg\ variables, ensuring consistent background colors even when scrollbars are present. Additionally, new \@property\ definitions for \--radialprogress\ and \--aura-angle\ enable better type safety and inheritance for these specific CSS variables.

packages/daisyui/src/base · high confidence

daisyUI 5 release with drawer variants and build improvements

This update introduces daisyUI version 5, featuring new \is-drawer-open\ and \is-drawer-close\ variants for the drawer component, allowing users to style drawer states more precisely. The release also includes significant build system improvements, such as optimized generation of color rules and themes, and fixes for layer nesting issues caused by Tailwind CSS 4.3.3 changes. Additionally, the package now supports Node ESM compatibility and includes updated documentation and CDN files with extended color opacity utilities.

packages/daisyui · high confidence

Dependencies

Upgrade to Tailwind CSS 4.3 and adopt Bun as the primary runtime

The project has upgraded its core dependency on Tailwind CSS from version 3 to 4.3.3, bringing the latest framework features to daisyui. To support this major framework shift, the development environment has migrated to Bun (v1.4.0), which is now specified as the package manager and used for all build, test, and lint scripts. The documentation site has also been updated to use Svelte 5 (v5.56.8) and Vite 8.1.5, while other tooling dependencies like PostCSS, culori, and lightningcss have been updated to their latest compatible versions.

(dependencies) · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

Score

  • CAI 52 → 48 (-3.6)
  • Rubric changed (rubric-2026.09.11 → rubric-2026.09.18) — scores are not directly comparable.

Lenses

  • Code Health 49 → 50 (+0.0)
  • Architecture 72 → 76 (+3.9)
  • Maturity 67 → 67 (+0.0)
  • Readiness 57 → 43 (-14.2)
  • Security 62 → 65 (+3.7)
  • Accessibility 47 → 47 (+0.0)
  • Performance 60 (new)

Resolved (10)

  • Documentation: no installation or build instructions (README.md)
  • Documentation: no usage examples (README.md)
  • Hotspot: packages/daisyui/functions/addPrefix.js (packages/daisyui/functions/addPrefix.js)
  • Hotspot: packages/docs/src/components/Search.svelte (packages/docs/src/components/Search.svelte)
  • Hotspot: packages/docs/src/lib/mdsvex/render-component.js (packages/docs/src/lib/mdsvex/render-component.js)
  • Hotspot: packages/docs/src/lib/scripts/translationConfig.js (packages/docs/src/lib/scripts/translationConfig.js)
  • Hotspot: packages/docs/src/routes/(routes)/(marketing)/alternative/[library]/+page.server.js (packages/docs/src/routes/(routes)/(marketing)/alternative/[library]/+page.server.js)
  • Hotspot: packages/docs/src/routes/(routes)/(marketing)/compare/[item]/+page.svelte (packages/docs/src/routes/(routes)/(marketing)/compare/[item]/+page.svelte)
  • Hotspot: packages/docs/src/routes/(routes)/theme-generator/+page.svelte (packages/docs/src/routes/(routes)/theme-generator/+page.svelte)
  • Hotspot: packages/tailwind-play-share/pr-preview.mjs (packages/tailwind-play-share/pr-preview.mjs)

New (2)

  • Scanner failed to run — not a clean result
  • Split packages/docs

Changes since last survey

  • 25 commits — 16 feature/other, 9 fixes

By area

  • packages/bundle — 9 commits
  • packages/daisyui — 9 commits
  • packages/docs — 6 commits
  • .agents/skills — 1 commit

Notable commits

  • fix: fix: #4766 validator colors specificity (#4767)
  • fix: fix: adjust tooltip tail position for themes with more radius (#4759)
  • fix: fix: allow Firefox Android to use diff by tap because Firefox Android ignores CSS resize and cannot drag(#4763)
  • fix: fix: avatar indicator dot RTL position (#4773)
  • fix: fix: btn-link with btn-disabled color (#4749)
  • fix: fix: disabled style for input, select, textarea and file-input (#4769)
  • fix: fix: range shadow size and performance (#4771)
  • fix: fix: status size respects theme size variables (#4774)
  • fix: fix: style aria-checked as btn-active in button (#4761)
  • change: chore(release): 5.7.39
  • change: chore(release): 5.7.40
  • change: chore(release): 5.7.41
  • change: chore(release): 5.7.42
  • change: chore(release): 5.7.43
  • change: chore(release): 5.7.44
  • change: chore(release): 5.7.45
  • change: chore(release): 5.7.46
  • change: chore(release): 5.7.47
  • change: docs
  • change: docs
  • …and 5 more

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

saadeghi/daisyui was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 1 October 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 9adbeaa259816be46b98bf497a09cd2ab127e3cf — the exact code this score is about.
  • Scored under rubric-2026.09.18 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-e569280dd5e2.