Repository Analysis

heroui-inc/heroui

🚀 Beautiful, fast and modern React UI library. (Previously NextUI)

0.9 Likely human-written View on GitHub
0.9
Adjusted Score
0.9
Raw Score
100%
Time Factor
2026-05-29
Last Push
29,451
Stars
MDX
Language
178,926
Lines of Code
2303
Files
140
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 0MEDIUM 0LOW 140

Pattern Findings

140 matches across 3 categories. Click a row to expand file-level details.

Fake / Example Data97 hits · 112 pts
SeverityFileLineSnippet
LOW…torybook/components/colors-demo/component-showcase.tsx174 Lorem ipsum dolor sit amet consectetur. Sed arcu donec id aliquam.
LOW…torybook/components/colors-demo/component-showcase.tsx174 Lorem ipsum dolor sit amet consectetur. Sed arcu donec id aliquam.
LOWpackages/react/src/components/drawer/drawer.stories.tsx182 Paragraph {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWpackages/react/src/components/drawer/drawer.stories.tsx182 Paragraph {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOW…src/components/scroll-shadow/scroll-shadow.stories.tsx29 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam pulvinar risus non risus
LOW…src/components/scroll-shadow/scroll-shadow.stories.tsx29 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam pulvinar risus non risus
LOWpackages/react/src/components/card/card.stories.tsx220 Lorem ipsum dolor sit amet consectetur. Sed arcu donec id aliquam dolor sed amet
LOWpackages/react/src/components/card/card.stories.tsx220 Lorem ipsum dolor sit amet consectetur. Sed arcu donec id aliquam dolor sed amet
LOW…t/src/components/alert-dialog/alert-dialog.stories.tsx782 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOW…t/src/components/alert-dialog/alert-dialog.stories.tsx782 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOW…t/src/components/alert-dialog/alert-dialog.stories.tsx787 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOW…t/src/components/alert-dialog/alert-dialog.stories.tsx787 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOW…t/src/components/alert-dialog/alert-dialog.stories.tsx792 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOW…t/src/components/alert-dialog/alert-dialog.stories.tsx792 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWpackages/react/src/components/toast/toast.stories.tsx243 setTimeout(() => resolve({name: "John Doe", email: "john@example.com"}), 2000);
LOWpackages/react/src/components/avatar/avatar.stories.tsx110 <Avatar.Image alt="John Doe" src="https://img.heroui.chat/image/avatar?w=400&h=400&u=3" />
LOW…ges/react/src/components/fieldset/fieldset.stories.tsx62 <Input placeholder="John Doe" />
LOWpackages/react/src/components/modal/modal.stories.tsx440 Paragraph {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit.
LOWpackages/react/src/components/modal/modal.stories.tsx440 Paragraph {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit.
LOWpackages/react/src/components/modal/modal.stories.tsx800 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWpackages/react/src/components/modal/modal.stories.tsx800 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWpackages/react/src/components/modal/modal.stories.tsx805 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWpackages/react/src/components/modal/modal.stories.tsx805 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWpackages/react/src/components/modal/modal.stories.tsx810 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWpackages/react/src/components/modal/modal.stories.tsx810 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWprompts/bolt-heroui.md354 <Input placeholder="Jane Doe" />
LOWprompts/heroui-system-prompt.md275 <TextField><Label>Name</Label><Input placeholder="Jane Doe" /></TextField>
LOWapps/docs/src/demos/cn/drawer/scrollable-content.tsx18 段落 {i + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/drawer/scrollable-content.tsx18 段落 {i + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/tooltip/custom-trigger.tsx11 alt="Jane Doe"
LOWapps/docs/src/demos/cn/scroll-shadow/with-card.tsx15 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/scroll-shadow/with-card.tsx15 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/scroll-shadow/custom-size.tsx10 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/scroll-shadow/custom-size.tsx10 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/scroll-shadow/orientation.tsx23 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/scroll-shadow/orientation.tsx23 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/scroll-shadow/default.tsx10 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/scroll-shadow/default.tsx10 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOW…/docs/src/demos/cn/scroll-shadow/visibility-change.tsx47 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOW…/docs/src/demos/cn/scroll-shadow/visibility-change.tsx47 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOW…ps/docs/src/demos/cn/scroll-shadow/hide-scroll-bar.tsx10 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOW…ps/docs/src/demos/cn/scroll-shadow/hide-scroll-bar.tsx10 段落 {idx + 1}:Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/toast/promise.tsx31 setTimeout(() => resolve({email: "john@example.com", name: "John Doe"}), 2000);
LOWapps/docs/src/demos/cn/textfield/with-error.tsx7 <Input placeholder="user@example.com" />
LOWapps/docs/src/demos/cn/textfield/input-types.tsx18 <Input placeholder="user@example.com" />
LOWapps/docs/src/demos/cn/textfield/required.tsx7 <Input placeholder="John Doe" />
LOWapps/docs/src/demos/cn/fieldset/on-surface.tsx52 <Input placeholder="John Doe" variant="secondary" />
LOWapps/docs/src/demos/cn/fieldset/basic.tsx49 <Input placeholder="John Doe" />
LOWapps/docs/src/demos/cn/modal/custom-portal.tsx44 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWapps/docs/src/demos/cn/modal/custom-portal.tsx44 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWapps/docs/src/demos/cn/modal/custom-portal.tsx49 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWapps/docs/src/demos/cn/modal/custom-portal.tsx49 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWapps/docs/src/demos/cn/modal/custom-portal.tsx54 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWapps/docs/src/demos/cn/modal/custom-portal.tsx54 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor
LOWapps/docs/src/demos/cn/modal/scroll-comparison.tsx46 段落 {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/cn/modal/scroll-comparison.tsx46 段落 {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/en/drawer/scrollable-content.tsx18 Paragraph {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/en/drawer/scrollable-content.tsx18 Paragraph {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam
LOWapps/docs/src/demos/en/tooltip/custom-trigger.tsx11 alt="Jane Doe"
LOWapps/docs/src/demos/en/scroll-shadow/with-card.tsx15 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam pulvinar risus non
37 more matches not shown…
Hyper-Verbose Identifiers42 hits · 42 pts
SeverityFileLineSnippet
LOW…ts/disclosure-group/use-disclosure-group-navigation.ts18export function useDisclosureGroupNavigation({
LOW…mponents/disclosure-group/disclosure-group.stories.tsx255function SelectedIphoneColorSwatch({color, name}: {color: string; name: string}) {
LOW…mponents/calendar-year-picker/calendar-year-picker.tsx61function useCalendarYearPickerTriggerContext(): CalendarYearPickerTriggerContextValue {
LOW…mponents/calendar-year-picker/calendar-year-picker.tsx258function useCalendarYearPickerGridContext(): CalendarYearPickerGridContextValue {
LOWpackages/react/src/hooks/use-theme.ts15function subscribeSystemPreference(callback: () => void): () => void {
LOWpackages/react/src/hooks/use-theme.ts35function getServerSystemPreference(): undefined {
LOWapps/docs/src/proxy.ts65function shouldSkipMarkdownRewrite(pathname: string): boolean {
LOWapps/docs/src/proxy.ts74function addHomepageDiscoveryHeaders(response: NextResponse, pathname: string): NextResponse {
LOW…s/src/app/[lang]/themes/utils/generate-theme-colors.ts286export function calculateAccentForeground(lightness: number, chroma: number, hue: number): string {
LOW…s/src/app/[lang]/themes/utils/generate-theme-colors.ts796export function getColorVariablesForElement(
LOW…/src/app/[lang]/themes/utils/generate-css-variables.ts76export function generateMinimalCssVariables(
LOW…s/docs/src/app/[lang]/themes/hooks/use-custom-fonts.ts44function getCustomFontsFromStorage(): CustomFont[] {
LOWapps/docs/src/utils/extract-links.ts100function convertStorybookTitleToPath(title: string): string {
LOW…s/src/showcases/navigation/apple-iphone-disclosure.tsx30function SelectedIphoneColorSwatch({color, name}: {color: string; name: string}) {
LOWapps/docs/src/components/pr-contributors.tsx77function extractContributorsFromCommits(commits: GitHubCommit[]): Map<string, GitHubUser> {
LOW…ps/docs/src/components/component-preview-container.tsx16export function ComponentPreviewContainer({
LOW…cs/src/components/fumadocs/layouts/notebook/client.tsx168export function FilteredSidebarTabsDropdown({
LOWapps/docs/src/lib/llms-platform-handlers.ts84export async function getPlatformLlmsComponentsTxt(platform: Platform) {
LOWapps/docs/src/lib/llms-platform-handlers.ts139export async function getPlatformLlmsPatternsTxt(platform: Platform) {
LOWapps/docs/src/lib/llms-platform-handlers.ts167export function createPlatformRouteHandler(
LOWapps/docs/src/lib/llms-utils.ts114export function generatePlatformIndexHeader(platform: Platform): string[] {
LOWapps/docs/src/lib/json-ld.ts28export function getSoftwareApplicationJsonLd() {
LOW…src/demos/cn/dropdown/single-with-custom-indicator.tsx8export function SingleWithCustomIndicator() {
LOW…rc/demos/cn/dropdown/with-custom-submenu-indicator.tsx6export function WithCustomSubmenuIndicator() {
LOW…src/demos/cn/dropdown/with-section-level-selection.tsx8export function WithSectionLevelSelection() {
LOW…os/cn/input-group/with-icon-prefix-and-copy-suffix.tsx6export function WithIconPrefixAndCopySuffix() {
LOW…os/cn/input-group/with-icon-prefix-and-text-suffix.tsx6export function WithIconPrefixAndTextSuffix() {
LOW…mos/cn/range-calendar/allows-non-contiguous-ranges.tsx8export function AllowsNonContiguousRanges() {
LOWapps/docs/src/demos/cn/range-calendar/three-months.tsx8function RangeCalendarMonthHeading({offset = 0}: {offset?: number}) {
LOW…s/docs/src/demos/cn/range-calendar/multiple-months.tsx8function RangeCalendarMonthHeading({offset = 0}: {offset?: number}) {
LOW…ps/docs/src/demos/cn/color-area/space-and-channels.tsx39export function ColorAreaSpaceAndChannels() {
LOWapps/docs/src/demos/cn/breadcrumbs/custom-separator.tsx5export default function BreadcrumbsCustomSeparator() {
LOW…src/demos/en/dropdown/single-with-custom-indicator.tsx8export function SingleWithCustomIndicator() {
LOW…rc/demos/en/dropdown/with-custom-submenu-indicator.tsx6export function WithCustomSubmenuIndicator() {
LOW…src/demos/en/dropdown/with-section-level-selection.tsx8export function WithSectionLevelSelection() {
LOW…os/en/input-group/with-icon-prefix-and-copy-suffix.tsx6export function WithIconPrefixAndCopySuffix() {
LOW…os/en/input-group/with-icon-prefix-and-text-suffix.tsx6export function WithIconPrefixAndTextSuffix() {
LOW…mos/en/range-calendar/allows-non-contiguous-ranges.tsx8export function AllowsNonContiguousRanges() {
LOWapps/docs/src/demos/en/range-calendar/three-months.tsx8function RangeCalendarMonthHeading({offset = 0}: {offset?: number}) {
LOW…s/docs/src/demos/en/range-calendar/multiple-months.tsx8function RangeCalendarMonthHeading({offset = 0}: {offset?: number}) {
LOW…ps/docs/src/demos/en/color-area/space-and-channels.tsx39export function ColorAreaSpaceAndChannels() {
LOWapps/docs/src/demos/en/breadcrumbs/custom-separator.tsx5export default function BreadcrumbsCustomSeparator() {
Over-Commented Block1 hit · 1 pts
SeverityFileLineSnippet
LOWpackages/react/src/index.ts1// ===================================