pawurb/smart_init: A simple gem for eliminating Ruby initializers boilerplate code, and providing unified service objects API
12-Jun-2025 21
This gem provides a simple DSL for getting rid of it. It offers an alternative to using Struct.new which does not check for number of parameters provided in initializer, exposes getters and instantiates unecessary class instances.
Smart Init offers a unified API convention for stateless service objects, accepting values in initializer and exposing one public class method call which instantiates new objects and accepts arguments passed to initializer.
Check out this blog post for my reasoning behind this approach to service object pattern.
pawurb/smart_init: A simple gem for eliminating Ruby initializers boilerplate code, and providing unified service objects API #ruby #rubydeveloper #rubyonrails #pawurb/smart_init: #simple #eliminating #initializers #boilerplate #code, #providing #unified #service #objects #api #code, #gem #service https://www.rubyonrails.ba/link/pawurb-smart_init-a-simple-gem-for-eliminating-ruby-initializers-boilerplate-code-and-providing-unified-service-objects-api