# 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