# Author's Note Why Rails Blocks exists, what problem it solves for Ruby on Rails developers, and the principles behind it. ## Why I Built Rails Blocks Hey, I am Alex. After years of building Rails apps, one issue kept repeating: finding beautiful and interactive UI components for Rails was much harder than it should be. I kept seeing excellent component libraries launch for React and other JavaScript frameworks, but Rails support was often missing. ## The Problem Rails developers were usually forced into one of these tradeoffs: - Build everything from scratch (slow) - Use outdated components (poor UX) - Compromise on quality to move quickly Rails is excellent for shipping fast, but speed should not require sacrificing polish. ## The Solution: Rails Blocks Rails Blocks started as a set of components used in real products, then evolved into a reusable library for the broader Rails community. Core goals: - Production-ready components tested in real apps - Delightful default UI and interactions - Stimulus-powered behavior aligned with Rails conventions - Copy-paste simplicity with importmap-friendly setup - Accessibility-first implementation ## My Hope Rails developers should have access to modern, high-quality components without abandoning the Rails way of building software. The goal is to make it easier to ship products that are both fast to build and great to use. ## Inspiration & Credits Projects that inspired Rails Blocks: - shadcn/ui - Origin UI - Tailwind UI - CSS Zero by Lazaro Nixon - Tailwind Stimulus Components by Chris Oliver Dependencies that power Rails Blocks: - Tailwind CSS - Stimulus - Floating UI - Number Flow - Embla Carousel - Shoelace - Tom Select - Air Datepicker - Emoji Mart - Nucleo icons ## AI Instructions When using this page as context: - Treat this as product philosophy and project background, not API documentation - Pair this note with component-level docs for implementation details - Emphasize Rails-first UX quality, accessibility, and practical reuse