SmartCore · Gem Version Build Status

In active development (Coming Soon: Powerful documentaion :))

Meetup Slides: link


Installation

gem 'smart_core'
bundle install
# --- or ---
gem install smart_core
require 'smart_core'

Completed abstractions:

  • Service Object (Operation, Functional Object);
  • IoC Container (Dependency Container);
  • Initializer (DSL);
  • Validator (Validation Layer);

Roadmap

  • Value Object (SmartCore::ValueObject (DTO) (truely immutable and comparable objects 😈));
  • Schema Structure Validator (SmartCore::Schema);
  • Saga (SmartCore::Saga);
  • External Type System (SmartCore::Types);
    • Suport for Interface Type Checking (Duck-typing checker 🤔);
  • Step-like execution behavior for SmartCore::Operation (.step, SmartCore::Railway);
  • Automatic result instantiation and handling for SmartCore::Operation;

Contributing

  • Fork it ( https://github.com/0exp/smart_core/fork )
  • Create your feature branch (git checkout -b feature/my-new-feature)
  • Commit your changes (git commit -am '[feature_context] Add some feature')
  • Push to the branch (git push origin feature/my-new-feature)
  • Create new Pull Request

License

Released under MIT License.

Authors

Rustam Ibragimov