Currently viewing the AI version
Switch to human version

HeroUI Technical Reference - AI-Optimized

Critical Context

  • Rebrand Warning: NextUI became HeroUI in January 2025 (corporate rebrand, same library)
  • Migration Reality: Find-and-replace operation taking 30-60 minutes
  • Current Version: v2.8.4 (September 2025)
  • Bundle Impact: 15-30kb gzipped + mandatory 30kb+ Framer Motion dependency

Configuration That Works in Production

Installation & Setup

npx heroui-cli@latest init  # Preferred over manual config

Tailwind Config (Working Example)

const { heroui } = require("@heroui/react");

module.exports = {
  plugins: [
    heroui({
      themes: {
        light: { colors: { primary: "#0072f5", secondary: "#7828c8" } },
        dark: { colors: { primary: "#0072f5", secondary: "#9353d3" } }
      }
    })
  ]
};

Framework Compatibility

  • Next.js: App Router + Pages Router (documented, tested)
  • Vite: Works without surprises
  • Remix/Astro: Functional but underdocumented

Critical Warnings & Failure Modes

Production Breaking Issues

  1. Next.js 14.2 Dark Mode Failure

    • Symptom: White text on white background (invisible components)
    • Cause: Provider wrapper changed during Next.js upgrade
    • Impact: Complete UI failure, weekend debugging session
    • Solution: Check framework guide for provider placement
  2. Framer Motion Dependency Trap

    • Reality: 30kb+ mandatory even without animations
    • False Promise: Claims of "lazy-loading" still include full Motion bundle
    • Detection: Use webpack-bundle-analyzer to verify chunk sizes
  3. Import Strategy Critical

    • Bundle Killer: Global imports bloat bundle significantly
    • Required: Individual component imports for tree-shaking
    • Verification: Monitor bundle size during development

Component Coverage & Limitations

Available Components (~50 total)

  • Forms: Input, Select, validation (works without external form libraries)
  • Navigation: Navbar, Breadcrumbs, Tabs
  • Data: Tables (basic CRUD, not complex data operations)
  • Layout: Divider, Spacer (minimal - expect to build custom layouts)

Missing Components

  • Complex data grids (requires TanStack Table integration)
  • Advanced date/time pickers
  • Specialized enterprise components

Performance Specifications

Bundle Size Reality

Component Set Size (gzipped) vs Competitors
Basic HeroUI 15-25kb MUI: 50-80kb+
+ Framer Motion +30kb Unavoidable
vs CSS-in-JS libs No runtime overhead Emotion: Runtime injection penalty

Accessibility Implementation

  • React Aria Integration: Real WCAG compliance, not marketing
  • Keyboard Navigation: Tab, Enter, Arrow keys function correctly
  • Screen Reader Support: Proper ARIA attributes, meaningful announcements
  • Focus Management: Works with nested modals (audit-tested)
  • Learning Curve: Requires understanding React Aria patterns vs simple onClick handlers

Resource Requirements

Development Time Investment

  • Migration from NextUI: 30-60 minutes (find-and-replace)
  • Migration from Chakra UI: 3-4 days (TypeScript error resolution)
  • Accessibility Audit Fix: 2 hours for component swaps (vs weeks of custom implementation)
  • Dark Mode Setup: Works out-of-box (vs afternoon of manual configuration)

Expertise Requirements

  • Mandatory: Tailwind CSS knowledge (library assumes proficiency)
  • Recommended: React Aria pattern understanding for custom components
  • Optional: Framer Motion (if using animations)

Decision Support Matrix

Choose HeroUI When:

  • Bundle size is critical concern
  • Accessibility compliance required without expertise investment
  • Tailwind CSS already in stack
  • Need reliable TypeScript support
  • Prefer CSS classes over CSS-in-JS runtime

Avoid HeroUI When:

  • Need 100+ components out-of-box
  • Bundle size irrelevant (enterprise constraints)
  • Team unfamiliar with Tailwind
  • Require complex data grid functionality
  • Cannot accept 30kb+ Motion dependency

Competitive Analysis

Factor HeroUI Material-UI Chakra UI Ant Design
Bundle Size 15-30kb + Motion 50-80kb+ ~40kb 100kb+
Runtime Overhead None (CSS) CSS-in-JS injection CSS-in-JS injection CSS-in-JS injection
Accessibility React Aria (excellent) Inconsistent Basic ARIA Basic ARIA
Component Count ~50 100+ ~40 200+
TypeScript Quality Native support Good Good Adequate
Learning Curve Easy (if Tailwind known) Steep Easy Medium

Community & Support Indicators

  • GitHub Activity: 26k+ stars, maintainer responsive
  • Release Frequency: Regular updates
  • Community Health: Active Discord, responsive GitHub discussions
  • Migration Support: NextUI community successfully migrated
  • Sustainability: Open Collective funding, transparent development

Common Troubleshooting

Import Errors During Migration

# Change package references
@nextui-org/* → @heroui/*

Bundle Analysis Commands

npm install --save-dev webpack-bundle-analyzer
# Check for Motion chunks in analysis

Dark Mode Provider Issues

  • Verify provider wrapper placement after Next.js upgrades
  • Check framework-specific integration guides

Resource Links for Implementation

Breaking Points & Thresholds

  • Component Count: ~50 available, insufficient for complex enterprise apps
  • Bundle Tolerance: 30kb+ Motion overhead non-negotiable
  • Framework Support: Next.js/Vite well-documented, others require configuration research
  • Customization Limits: Constrained by Tailwind ecosystem, extensive custom styling may require alternative solutions

Useful Links for Further Investigation

Resources That Don't Waste Your Time

LinkDescription
HeroUI DocumentationDocumentation that doesn't completely suck, rare for component libraries. Examples work when you copy-paste them instead of throwing errors. Search finds shit you're looking for. API reference is actually complete instead of missing critical props.
GitHub Repository26k+ stars, maintainer responds to issues instead of disappearing into the void. Check issues before using components - saved me 4 hours debugging a Modal focus trap bug that was already reported.
Component StorybookInteractive component playground. Use this to figure out APIs before diving into docs. Code examples that actually compile instead of breaking with missing imports. Skip if you're in a hurry to ship.
NextUI to HeroUI Migration GuideMigration from NextUI. Mostly find-and-replace package names, took me like 45 minutes including fixing broken imports. Actually, might've been an hour - time flies when you're fighting import errors.
CLI Installation`npx heroui-cli@latest init` works better than manual config hell. Sets up Tailwind without breaking your existing styles.
Next.js Setup GuideActually documented Next.js integration. Covers App Router and Pages Router without handwaving. They tested this shit.
Vite ConfigurationVite setup that doesn't assume you're a Vite expert. Good for people who just want components to work.
Discord CommunityActive Discord with people who actually use this shit in production. Get answers in minutes instead of waiting days on Stack Overflow. Way better than posting questions that get ignored.
GitHub DiscussionsFeature requests and complex questions. Maintainer responds here instead of ghosting like 90% of open source maintainers.
Stack OverflowStill tagged "nextui" but covers HeroUI. Good for complex problems when Discord can't help and you need detailed solutions.
Tailwind Variants DocsEssential if you want to understand how theming works instead of cargo-culting examples. Actually solves CSS conflicts instead of pretending to.
React Aria DocumentationDeep dive into accessibility patterns. Read this if you need custom components that don't break screen readers. Warning: it's dense as fuck.
Tailwind CSS DocsRequired reading if you plan to customize anything. HeroUI assumes you know Tailwind, won't hold your hand.
HeroUI ProPaid component collection. 210+ components for when the free ones aren't enough. Worth it if you're building complex shit and don't want to spend weeks building components. Expensive, so justify the cost first.
Figma Design KitOfficial Figma components. Kit is okay, not amazing but better than building from scratch. Useful for design handoffs if your designers give a shit about design systems.
HeroUI NativeReact Native version. Still experimental as hell, probably not production-ready. Worth watching if you need mobile components that don't suck.
Contributing GuideHow to contribute without pissing off maintainers. Well-written if you want to fix bugs or add missing features.
Open Collective - Support HeroUISupport maintainers so they don't abandon the project. Transparent funding, good if you're using this in production and want it to survive.

Related Tools & Recommendations

howto
Recommended

Migrating CRA Tests from Jest to Vitest

integrates with Create React App

Create React App
/howto/migrate-cra-to-vite-nextjs-remix/testing-migration-guide
100%
integration
Recommended

Stop Stripe from Destroying Your Serverless Performance

Cold starts are killing your payments, webhooks are timing out randomly, and your users think your checkout is broken. Here's how to fix the mess.

Stripe
/integration/stripe-nextjs-app-router/serverless-performance-optimization
59%
integration
Recommended

Supabase + Next.js + Stripe: How to Actually Make This Work

The least broken way to handle auth and payments (until it isn't)

Supabase
/integration/supabase-nextjs-stripe-authentication/customer-auth-payment-flow
59%
integration
Recommended

Claude API + Next.js App Router: What Actually Works in Production

I've been fighting with Claude API and Next.js App Router for 8 months. Here's what actually works, what breaks spectacularly, and how to avoid the gotchas that

Claude API
/integration/claude-api-nextjs-app-router/app-router-integration
59%
howto
Recommended

Migrate from Webpack to Vite Without Breaking Everything

Your webpack dev server is probably slower than your browser startup

Webpack
/howto/migrate-webpack-to-vite/complete-migration-guide
59%
integration
Recommended

Vite + React 19 + TypeScript + ESLint 9: Actually Fast Development (When It Works)

Skip the 30-second Webpack wait times - This setup boots in about a second

Vite
/integration/vite-react-typescript-eslint/integration-overview
59%
tool
Recommended

TypeScript - JavaScript That Catches Your Bugs

Microsoft's type system that catches bugs before they hit production

TypeScript
/tool/typescript/overview
59%
pricing
Recommended

Should You Use TypeScript? Here's What It Actually Costs

TypeScript devs cost 30% more, builds take forever, and your junior devs will hate you for 3 months. But here's exactly when the math works in your favor.

TypeScript
/pricing/typescript-vs-javascript-development-costs/development-cost-analysis
59%
tool
Recommended

JavaScript to TypeScript Migration - Practical Troubleshooting Guide

This guide covers the shit that actually breaks during migration

TypeScript
/tool/typescript/migration-troubleshooting-guide
59%
tool
Recommended

Remix - HTML Forms That Don't Suck

Finally, a React framework that remembers HTML exists

Remix
/tool/remix/overview
54%
tool
Recommended

React Router v7 Production Disasters I've Fixed So You Don't Have To

My React Router v7 migration broke production for 6 hours and cost us maybe 50k in lost sales

Remix
/tool/remix/production-troubleshooting
54%
tool
Recommended

Storybook - Build Components Without Your App's Bullshit

The tool most frontend teams end up using for building components in isolation

Storybook
/tool/storybook/overview
54%
tool
Popular choice

Thunder Client Migration Guide - Escape the Paywall

Complete step-by-step guide to migrating from Thunder Client's paywalled collections to better alternatives

Thunder Client
/tool/thunder-client/migration-guide
54%
tool
Popular choice

Fix Prettier Format-on-Save and Common Failures

Solve common Prettier issues: fix format-on-save, debug monorepo configuration, resolve CI/CD formatting disasters, and troubleshoot VS Code errors for consiste

Prettier
/tool/prettier/troubleshooting-failures
52%
tool
Recommended

Fix Astro Production Deployment Nightmares

integrates with Astro

Astro
/tool/astro/production-deployment-troubleshooting
49%
compare
Recommended

Which Static Site Generator Won't Make You Hate Your Life

Just use fucking Astro. Next.js if you actually need server shit. Gatsby is dead - seriously, stop asking.

Astro
/compare/astro/nextjs/gatsby/static-generation-performance-benchmark
49%
tool
Recommended

Astro - Static Sites That Don't Suck

integrates with Astro

Astro
/tool/astro/overview
49%
alternatives
Recommended

Figma's Code Generation Is Garbage (And Here's What Actually Works)

Stop Wasting Money on Broken Plugins - Use Tools That Generate Real Code

Locofy.ai
/alternatives/figma-design-to-code-tools/migration-roadmap
49%
alternatives
Recommended

Figma Alternatives: Because $20/Month Is Fucking Expensive

integrates with Figma

Figma
/alternatives/figma/comprehensive-selection-guide
49%
news
Recommended

Figma Gets Lukewarm Wall Street Reception Despite AI Potential - August 25, 2025

Major investment banks issue neutral ratings citing $37.6B valuation concerns while acknowledging design platform's AI integration opportunities

Technology News Aggregation
/news/2025-08-25/figma-neutral-wall-street
49%

Recommendations combine user behavior, content similarity, research intelligence, and SEO optimization