cucumber/common
FreeA monorepo of common components - building blocks for implementing Cucumber in various languages.
About cucumber/common
Cucumber Common Components is a monorepo containing polyglot repositories for several libraries that make up the Cucumber BDD framework. It hosts multiple language implementations of the same library together, including cucumber-expressions (pattern-matching for Gherkin steps), tag-expressions (parsing tag selection queries), gherkin (parser for Gherkin feature files), messages (JSON message protocol), query (query API for messages), and gherkin-utils (API for querying parsed Gherkin documents). This repository also serves as a central place for issues that affect multiple Cucumber repositories, streamlining cross-cutting bug reports and feature requests.
Key Features
Pros & Cons
- Open source with a large community (3.4k stars, 681 forks)
- Polyglot design reduces duplication across language implementations
- Well-organized monorepo with clear library separation
- Active maintenance with code of conduct and contributing guidelines
- Part of the widely adopted Cucumber BDD ecosystem
- Limited to Cucumber-related components, not a general-purpose tool
- Requires familiarity with Cucumber and BDD concepts to be useful
- Polyglot repo can be complex for newcomers due to multiple languages