{"id":13880345,"url":"https://github.com/collectiveidea/interactor-rails","last_synced_at":"2025-05-14T06:12:31.472Z","repository":{"id":55628702,"uuid":"12173225","full_name":"collectiveidea/interactor-rails","owner":"collectiveidea","description":"Interactor Rails provides Rails support for the Interactor gem.","archived":false,"fork":false,"pushed_at":"2024-12-24T02:33:09.000Z","size":70,"stargazers_count":448,"open_issues_count":0,"forks_count":45,"subscribers_count":14,"default_branch":"main","last_synced_at":"2025-04-13T10:50:05.619Z","etag":null,"topics":["interactor","interactor-rails","rails","ruby"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/collectiveidea.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-08-17T04:14:51.000Z","updated_at":"2025-04-12T01:01:05.000Z","dependencies_parsed_at":"2025-01-04T07:01:45.054Z","dependency_job_id":"42661311-b6e4-4820-90a9-bc03d36509c9","html_url":"https://github.com/collectiveidea/interactor-rails","commit_stats":{"total_commits":91,"total_committers":14,"mean_commits":6.5,"dds":0.4065934065934066,"last_synced_commit":"9cb6c0653755e2de17748491534c728895f982dc"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/collectiveidea%2Finteractor-rails","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/collectiveidea%2Finteractor-rails/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/collectiveidea%2Finteractor-rails/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/collectiveidea%2Finteractor-rails/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/collectiveidea","download_url":"https://codeload.github.com/collectiveidea/interactor-rails/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254080565,"owners_count":22011444,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["interactor","interactor-rails","rails","ruby"],"created_at":"2024-08-06T08:02:57.578Z","updated_at":"2025-05-14T06:12:31.423Z","avatar_url":"https://github.com/collectiveidea.png","language":"Ruby","readme":"# Interactor Rails\n\n[![Gem](https://img.shields.io/gem/v/interactor-rails.svg?style=flat-square)](http://rubygems.org/gems/interactor-rails)\n[![Build](https://github.com/collectiveidea/interactor-rails/actions/workflows/tests.yml/badge.svg)](https://github.com/collectiveidea/interactor-rails/actions/workflows/tests.yml)\n[![Coverage](https://img.shields.io/codeclimate/coverage-letter/collectiveidea/interactor-rails.svg?style=flat-square)](https://codeclimate.com/github/collectiveidea/interactor-rails)\n[![Maintainability](https://img.shields.io/codeclimate/maintainability/collectiveidea/interactor-rails.svg?style=flat-square)](https://codeclimate.com/github/collectiveidea/interactor-rails)\n\nInteractor Rails provides Rails support for the\n[Interactor](https://github.com/collectiveidea/interactor) gem.\n\n## Installation\n\nAdd this line to your application's Gemfile:\n\n```ruby\ngem \"interactor-rails\", \"~\u003e 2.0\"\n```\n\nInteractor Rails is tested against Ruby 3.1 and newer on Rails 7.0 or newer.\nFor older versions of Ruby and Rails use version 2.2.1.\n\n## Usage\n\nInteractor Rails ensures that `app/interactors` is included in your autoload\npaths, and provides generators for your convenience.\n\n```bash\nrails generate interactor authenticate_user\n```\n\nadds to `app/interactors/authenticate_user.rb`:\n\n```ruby\nclass AuthenticateUser\n  include Interactor\n\n  def call\n    # TODO\n  end\nend\n```\n\nThere is also a generator for organizers.\n\n```bash\nrails generate interactor:organizer place_order charge_card send_thank_you fulfill_order\n```\n\nadds to `app/interactors/place_order.rb`:\n\n```ruby\nclass PlaceOrder\n  include Interactor::Organizer\n\n  organize ChargeCard, SendThankYou, FulfillOrder\nend\n```\n\n## Contributions\n\nInteractor Rails is open source and contributions from the community are\nencouraged! No contribution is too small.\n\nSee Interactor Rails'\n[contribution guidelines](CONTRIBUTING.md) for more information.\n\n## Thank You!\n\nA very special thank you to [Attila Domokos](https://github.com/adomokos) for\nhis fantastic work on [LightService](https://github.com/adomokos/light-service).\nInteractor is inspired heavily by the concepts put to code by Attila.\n","funding_links":[],"categories":["Ruby","Business logic"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcollectiveidea%2Finteractor-rails","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcollectiveidea%2Finteractor-rails","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcollectiveidea%2Finteractor-rails/lists"}