A summary of data about the Ruby ecosystem.

https://github.com/cucumber/cucumber-ruby-core

Core library for the Ruby flavour of Cucumber
https://github.com/cucumber/cucumber-ruby-core

Keywords

cucumber polyglot-release ruby

Keywords from Contributors

tidelift rubygems activerecord rspec activejob mvc webdriver selenium rubocop feature-flag

Last synced: about 8 hours ago
JSON representation

Repository metadata

Core library for the Ruby flavour of Cucumber

README.md

Cucumber

Stand With Ukraine
OpenCollective
OpenCollective
Test cucumber-core
Code Climate

Cucumber is a tool for running automated tests written in plain language. Because they're
written in plain language, they can be read by anyone on your team. Because they can be
read by anyone, you can use them to help improve communication, collaboration and trust on
your team.

Cucumber Core is the inner hexagon
for the Ruby flavour of Cucumber.

It contains the core domain logic to execute Cucumber features. It has no user interface,
just a Ruby API. If you're interested in how Cucumber works, or in building other
tools that work with Gherkin documents, you've come to the right place.

See CONTRIBUTING.md for info on contributing to Cucumber (issues,
PRs, etc.).

Everyone interacting in this codebase and issue tracker is expected to follow the
Cucumber code of conduct.

Installation

cucumber-core is a Ruby gem. Install it as you would install any gem: add
cucumber-core to your Gemfile:

gem 'cucumber-core'

then install it:

$ bundle

or install the gem directly:

$ gem install cucumber-core

Supported platforms

Usage

The following example aims to illustrate how to use cucumber-core gem and to
make sure it is working well within your environment. For more details
explanation on what it actually does and how to work with it, see
docs/ARCHITECTURE.md.

# cucumber_core_example.rb

require 'cucumber/core'
require 'cucumber/core/filter'

class ActivateSteps < Cucumber::Core::Filter.new
  def test_case(test_case)
    test_steps = test_case.test_steps.map do |step|
      step.with_action { print "processing: " }
    end

    test_case.with_steps(test_steps).describe_to(receiver)
  end
end

feature = Cucumber::Core::Gherkin::Document.new(__FILE__, <<-GHERKIN)
Feature:
  Scenario:
    Given some requirements
    When we do something
    Then it should pass
GHERKIN

class MyRunner
  include Cucumber::Core
end

MyRunner.new.execute([feature], [ActivateSteps.new]) do |events|
  events.on(:test_step_finished) do |event|
    test_step, result = event.test_step, event.result
    print "#{test_step.text} #{result}\n"
  end
end

If you run this Ruby script:

ruby cucumber_core_example.rb

You should see the following output:

processing: some requirements ✓
processing: we do something ✓
processing: it should pass ✓

Documentation and support

Copyright

Copyright (c) Cucumber Ltd. and Contributors. See LICENSE for details.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 1 day ago

Total Commits: 883
Total Committers: 54
Avg Commits per committer: 16.352
Development Distribution Score (DDS): 0.625

Commits in past year: 30
Committers in past year: 5
Avg Commits per committer in past year: 6.0
Development Distribution Score (DDS) in past year: 0.3

Name Email Commits
Matt Wynne m****t@m****t 331
Steve Tooke s****e@h****s 123
Björn Rasmusson B****n@c****g 74
Luke Hill l****k@h****m 61
Vincent Pretre v****e@g****m 53
Aslak Hellesøy a****y@g****m 36
Alessandro a****0@t****r 24
Aurélien Reeves a****s@s****m 24
Olle Jonsson o****n@g****m 19
Thomas Brand t****5@m****m 14
renovate[bot] 2****] 12
Christophe Bliard c****d@t****o 10
Aslak Hellesøy a****y@s****m 9
Jun Aruga j****a@r****m 7
Ben Song z****g@g****m 6
Oleg Sukhodolsky o****3@g****m 6
Utkarsh Gupta u****h@d****g 6
Micah Geisel m****h@b****m 4
Oren Dobzinski o****n@d****m 4
Orien Madgwick _@o****o 4
M.P. Korstanje r****e@g****m 4
Andrea Nodari a****1@g****m 3
Dana Scheider d****r@g****m 3
Erran Carey me@e****m 3
Matt Metzger m****r@g****m 3
Richard Adams r****2@g****m 3
danascheider d****r@r****m 2
vincent.capicotto v****o@h****t 2
dependabot[bot] 4****] 2
Timothée Ville t****e@h****t 2
and 24 more...

Committer domains:


Issue and Pull Request metadata

Last synced: 2 days ago

Total issues: 13
Total pull requests: 159
Average time to close issues: 8 months
Average time to close pull requests: about 1 month
Total issue authors: 11
Total pull request authors: 28
Average comments per issue: 6.08
Average comments per pull request: 1.48
Merged pull request: 111
Bot issues: 1
Bot pull requests: 37

Past year issues: 3
Past year pull requests: 23
Past year average time to close issues: 2 months
Past year average time to close pull requests: 10 days
Past year issue authors: 2
Past year pull request authors: 6
Past year average comments per issue: 0.33
Past year average comments per pull request: 0.7
Past year merged pull request: 17
Past year bot issues: 0
Past year bot pull requests: 6

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/cucumber/cucumber-ruby-core

Top Issue Authors

  • aurelien-reeves (2)
  • nodeg (2)
  • olleolleolle (1)
  • calderete (1)
  • knightinfire (1)
  • akostadinov (1)
  • renovate[bot] (1)
  • vincent-psarga (1)
  • luke-hill (1)
  • tas50 (1)
  • majormoses (1)

Top Pull Request Authors

  • luke-hill (39)
  • renovate[bot] (30)
  • vincent-psarga (19)
  • aurelien-reeves (9)
  • olleolleolle (8)
  • brasmusson (7)
  • botandrose (6)
  • dependabot[bot] (6)
  • yahonda (4)
  • mattwynne (4)
  • aslakhellesoy (4)
  • utkarsh2102 (3)
  • orien (3)
  • nodeg (2)
  • andrew (2)

Top Issue Labels

  • :hourglass: stale (4)
  • :bank: debt (2)
  • :question: question (1)
  • :bug: bug (1)
  • :no_good: wontfix (1)
  • :wrench: build (1)

Top Pull Request Labels

  • :robot: dependencies (12)
  • :safety_pin: pinned (4)
  • :hourglass: stale (2)
  • :wrench: build (1)

Package metadata

gem.coop: cucumber-core

Core library for the Cucumber BDD app

  • Homepage: https://cucumber.io
  • Documentation: http://www.rubydoc.info/gems/cucumber-core/
  • Licenses: MIT
  • Latest release: 16.1.1 (published 18 days ago)
  • Last Synced: 2026-01-09T11:30:43.827Z (2 days ago)
  • Versions: 52
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 80,559,590 Total
  • Docker Downloads: 60,482,204
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 0.24%
    • Downloads: 0.363%
    • Docker downloads count: 0.597%
  • Maintainers (1)
  • Funding:
    • https://opencollective.com/cucumber
rubygems.org: cucumber-core

Core library for the Cucumber BDD app

  • Homepage: https://cucumber.io
  • Documentation: http://www.rubydoc.info/gems/cucumber-core/
  • Licenses: MIT
  • Latest release: 16.1.1 (published 18 days ago)
  • Last Synced: 2026-01-09T11:30:44.144Z (2 days ago)
  • Versions: 52
  • Dependent Packages: 8
  • Dependent Repositories: 10,224
  • Downloads: 80,559,590 Total
  • Docker Downloads: 60,482,204
  • Rankings:
    • Dependent repos count: 0.331%
    • Downloads: 0.352%
    • Docker downloads count: 0.705%
    • Dependent packages count: 2.237%
    • Average: 2.671%
    • Forks count: 3.723%
    • Stargazers count: 8.681%
  • Maintainers (1)
  • Funding:
    • https://opencollective.com/cucumber
proxy.golang.org: github.com/cucumber/cucumber-ruby-core


Dependencies

cucumber-core.gemspec rubygems
  • rake ~> 13.0, >= 13.0.6 development
  • rspec ~> 3.11, >= 3.11.0 development
  • rubocop ~> 1.29, >= 1.29.1 development
  • rubocop-packaging ~> 0.5, >= 0.5.1 development
  • unindent ~> 1.0, >= 1.0 development
  • cucumber-gherkin ~> 24.0, >= 24.0.0
  • cucumber-messages ~> 19.0, >= 19.0.0
  • cucumber-tag-expressions ~> 4.1, >= 4.1.0
.github/workflows/release.yml actions
  • actions/checkout v3 composite
  • cucumber/action-create-github-release v1.1.0 composite
  • cucumber/action-publish-rubygem v1.0.0 composite
.github/workflows/test.yml actions
  • actions/checkout v3 composite
  • ruby/setup-ruby v1 composite
.github/workflows/rubocop.yml actions
  • actions/checkout v4 composite
  • ruby/setup-ruby v1 composite
Gemfile rubygems

Score: 27.110297184297668