Brut: A New Web Framework for Ruby
10 months ago
- #Ruby
- #Frameworks
- #Web Development
- Brut is a new, simple yet fully-featured web framework for Ruby.
- It differs from other Ruby frameworks by eliminating controllers, verbs, and resources, focusing instead on pages, forms, and single-action handlers.
- Brut generates HTML on the server and allows full use of JavaScript and CSS.
- The framework emphasizes low-abstraction and low-ceremony without being low-level like Sinatra.
- Brut includes built-in OpenTelemetry-based instrumentation, a Sequel-powered data access layer, and developer automation.
- It can be installed and run quickly, even without Ruby installed, using Docker.
- Brut leverages the modern Web Platform with unified client-server form validation and autonomous custom elements (BrutJS).
- It promotes good practices by default, such as reasonable content security policies, non-null database columns, and timezone-aware time handling.
- Brut uses popular Ruby gems like RSpec, Faker, FactoryBot, and Phlex for testing, data setup, and HTML generation.
- The framework avoids YAML for configuration, preferring Ruby Hashes and environment variables.
- Brut simplifies web app development by avoiding unnecessary abstractions and architectural debates.
- The creator aims to make web app development fun by focusing on Ruby, HTML, and modern browser capabilities.