{"id":18116651,"url":"https://github.com/funkwerk/gherkin_language","last_synced_at":"2025-04-14T13:41:59.548Z","repository":{"id":56874135,"uuid":"38449898","full_name":"funkwerk/gherkin_language","owner":"funkwerk","description":"Checks language of gherkin files","archived":false,"fork":false,"pushed_at":"2017-11-03T19:37:24.000Z","size":48,"stargazers_count":2,"open_issues_count":4,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-28T02:46:43.117Z","etag":null,"topics":["cucumber","feature","gherkin","grammar","language","spelling","tool"],"latest_commit_sha":null,"homepage":"","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/funkwerk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-07-02T18:32:39.000Z","updated_at":"2016-10-23T16:36:06.000Z","dependencies_parsed_at":"2022-08-20T22:30:33.592Z","dependency_job_id":null,"html_url":"https://github.com/funkwerk/gherkin_language","commit_stats":null,"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkwerk%2Fgherkin_language","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkwerk%2Fgherkin_language/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkwerk%2Fgherkin_language/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/funkwerk%2Fgherkin_language/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/funkwerk","download_url":"https://codeload.github.com/funkwerk/gherkin_language/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248665748,"owners_count":21142123,"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":["cucumber","feature","gherkin","grammar","language","spelling","tool"],"created_at":"2024-11-01T04:12:45.582Z","updated_at":"2025-04-14T13:41:59.489Z","avatar_url":"https://github.com/funkwerk.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Check Language of Gherkin Files\n\n[![Build Status](https://travis-ci.org/funkwerk/gherkin_language.svg)](https://travis-ci.org/funkwerk/gherkin_language)\n[![Latest Tag](https://img.shields.io/github/tag/funkwerk/gherkin_language.svg)](https://github.com/funkwerk/gherkin_language)\n[![Docker Build](https://img.shields.io/docker/automated/gherkin/language.svg)](https://hub.docker.com/r/gherkin/language/)\n[![Docker pulls](https://img.shields.io/docker/pulls/gherkin/language.svg)](https://hub.docker.com/r/gherkin/language/)\n[![Downloads](https://img.shields.io/gem/dt/gherkin_language.svg)](https://rubygems.org/gems/gherkin_language)\n\nThis tool analyzes the language of gherkin files and report language errors.\nCurrently just English is supported.\n\n## Usage\n\nrun `gherkin_language` on a list of files\n\n    gherkin_language FEATURE_FILES\n\n`gherkin_language` caches valid sentences. If all sentences are valid, it just needs some time to hash them.\n\nTo disable usage of cache, start it with `--no-cache`.\n\nTo just extract the sentences, start it with `--sentences`. This could be helpful for using these sentences in another tool. It should not be used for formatting issues. For formatting `gherkin_format --template ...` could be used.\n\nTo tag all words used, start it with `--tag`. This allows to build up a glossary based on the feature files provided.\n\nTo ignore specific rules, mention them with an `--ignore RULE`. This allows to bypass the checks.\n\nTo check for confused words, based on ngrams, add `--ngram`. Please note, that it requires much disk space and time.\n\nBy default it will accept unknown words. For warnings about unknown words add `--unknown-words`.\n\nGet a readability report using `--readability`. It indicates, which files are not good readable.\n\n### Usage with Docker\n\nAssuming there is a `test.feature` within the current folder, then the following command will check the feature file.\n\n```\ndocker run -t -v $(pwd):/user -w /user gherkin/language test.feature\n```\n\nFor usage of ngrams (be aware, that it will need roughly 10 GB) just use. This will show where very uncommon word combinations are used.\n\n```\ndocker run -t -v $(pwd):/user -w /user gherkin/language-ngram test.feature\n```\n\n## Glossary\n\nIt happens that there are words which are unknown to the dictionary.\nOnce this happens think about if could use another word, that is more common. If there is no such word, add it to the directory-located glossary.\n\n## Installation\n\nInstall it with:\n\n`sudo gem install gherkin_language`\n\nAfter that `gherkin_language` executable is available.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffunkwerk%2Fgherkin_language","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffunkwerk%2Fgherkin_language","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffunkwerk%2Fgherkin_language/lists"}