Ruby on Rails gem released by GitHub for building reusable, testable view components. Each component is a Ruby class inheriting from ViewComponent::Base with an ERB template, optionally parameters/validations, and can replace templates/partials. Supports slots (render_one / render_many), previews rendered in isolation (conceptually similar to Rails mailer previews), and RSpec-style assertions/snapshot testing. In Radoslav Stankov's wroclove.rb 2024 talk, used as the backbone for the Angry Building front end: components are nested (stats → stats_number), aliased (`as: :number`), composed via builder patterns, and extended with a custom `component` helper and a fetch-with-fallback for safe enum rendering. Also referenced in Yaroslav Shmarov's wroclove.rb 2022 talk as key to structuring the Rails monolith front-end at Bearer. Contrasted with helpers (global, name-conflict-prone) and decorators (insufficient for UI structure).