Don't waste time on Stripe subscriptions or designing a pricing section. Get started today with our battle-tested stack and built-in monetization features.
Get Lifetime Access
© 2026 Dirstarter. All rights reserved.
All UI components have been migrated from Radix UI to Base UI for a more modern, flexible foundation
We've migrated all UI components from Radix UI to Base UI — a lower-level, unstyled component library that gives you more control over rendering and styling.
asChild prop has been replaced with Base UI's render prop and useRender hook for polymorphic renderingtailwind-variants instead of cva, with support for multi-element slot stylingdata-open, data-horizontal, etc.) instead of Radix's data-state attributesIf you've customized any UI components, you'll need to update:
asChild → render prop — Components no longer accept asChild. Use the render prop with a callback insteaddata-state="open" with data-open, and similar Base UI attribute conventionstailwind-variantscomponents/common/@radix-ui/react-slot — Use the new slot() utility from lib/slot.ts backed by Base UI's mergeProps