gherkin-lint - A Gherkin linter/validator written in javascript

  •        10

Uses Gherkin to parse feature files and runs linting against the default rules, and the optional rules you specified in your .gherkin-lintrc file. * These rules cannot be turned off because they detect undocumented cucumber functionality that causes the gherkin parser to crash.


commander : 2.18.0
gherkin : 5.1.0
glob : 7.1.3
lodash : 4.17.10



Related Projects

atom-beautify - :lipstick: Universal beautification package for Atom editor (:warning: Currently migrating to https://github

  •    CoffeeScript

Atom-Beautify respects the core.telemetryConsent configuration option from Atom editor. If you do not wish to have usage data sent to Google Analytics then please set core.telemetryConsent to no or undecided option before using Atom-Beautify. See Anonymous Analytics section of docs for details. Thank you. Atom-Beautify is going to be completely rewritten with Unibeautify at its core! See unibeautify branch for work in progress and Issue #1174.

cucumber-js - Cucumber for JavaScript

  •    Javascript

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.js is the JavaScript implementation of Cucumber and runs on both Node.js (4 and above) and modern web browsers.


  •    Ruby

A fast Gherkin parser in Ragel (The parser behind Cucumber)

turnip - Gherkin extension for RSpec

  •    Ruby

Turnip is a Gherkin extension for RSpec. It allows you to write tests in Gherkin and run them through your RSpec environment. Basically you can write cucumber features in RSpec. Or add it to your Gemfile and run bundle.

spinach - Spinach is a BDD framework on top of Gherkin.

  •    Ruby

Spinach is a high-level BDD framework that leverages the expressive Gherkin language (used by Cucumber) to help you define executable specifications of your application or library's acceptance criteria. Step maintainability: since features map to their own classes, their steps are just methods of that class. This encourages step encapsulation.

godog - Cucumber for golang

  •    Go

Please read all the README, you may find it very useful. And do not forget to peek into the CHANGELOG from time to time.Package godog is the official Cucumber BDD framework for Golang, it merges specification and test documentation into one cohesive whole. The author is a core member of cucumber team.

Gherkin - Gherkin parser, written in PHP 5.3+ for Behat project

  •    PHP

This is the php Gherkin parser for Behat. It comes bundled with more than 40 native languages (see i18n.php) support & clean architecture.

gherkin-editor - A Gherkin editor based on Ace and node.js

  •    Javascript

A Gherkin editor based on Ace and node.js

spinach - Spinach is a BDD framework on top of Gherkin.

  •    Ruby

Spinach is a BDD framework on top of Gherkin.

Gherkin editor


A simple text editor to write specifications using Gherkin. The editor supports code completion, syntax highlighting, spell checker and more.

gherkin - a functional programming language and interpreter written in GNU Bash 4

  •    Shell

This project is dormant. I have not worked on it in years, and am unlikely to continue work on it anytime soon. I encourage you to check out "mal" -- "Make a Lisp" -- by Joel Martin, a project inspired by this one, that includes implementations in dozens of languages, including Bash: While it's missing garbage collection, mal's Bash Lisp is incredibly clean and easy to hack on. gherkin is a dialect of Lisp, and like other Lisps such as Clojure and [Scheme]( it features homoiconicity, first-class functions, and primitive functions for operating on a variety of data types such as strings, integers, symbols, and lists. As a citizen of *nix and the shell environment, it also provides *nix and shell interoperation facilities.

syntastic - Syntax checking hacks for vim

  •    Vim

Syntastic is a syntax checking plugin for Vim created by Martin Grenfell. It runs files through external syntax checkers and displays any resulting errors to the user. This can be done on demand, or automatically as files are saved. If syntax errors are detected, the user is notified and is happy because they didn't have to compile their code or execute their script to find them. At the time of this writing, syntastic has checking plugins for ACPI Source Language, ActionScript, Ada, Ansible configurations, API Blueprint, AppleScript, AsciiDoc, Assembly languages, BEMHTML, Bro, Bourne shell, C, C++, C#, Cabal, Chef, CMake, CoffeeScript, Coco, Coq, CSS, Cucumber, CUDA, D, Dart, DocBook, Dockerfile, Dust, Elixir, Erlang, eRuby, Fortran, Gentoo metadata, GLSL, Go, Haml, Haskell, Haxe, Handlebars, HSS, HTML, Java, JavaScript, JSON, JSX, Julia, LESS, Lex, Limbo, LISP, LLVM intermediate language, Lua, Markdown, MATLAB, Mercury, NASM, Nix, Objective-C, Objective-C++, OCaml, Perl, Perl 6, Perl POD, PHP, gettext Portable Object, OS X and iOS property lists, Pug (formerly Jade), Puppet, Python, QML, R, Racket, RDF TriG, RDF Turtle, Relax NG, reStructuredText, RPM spec, Ruby, SASS/SCSS, Scala, Slim, SML, Solidity, Sphinx, SQL, Stylus, Tcl, TeX, Texinfo, Twig, TypeScript, Vala, Verilog, VHDL, Vim help, VimL, Vue.js, xHtml, XML, XSLT, XQuery, YACC, YAML, YANG data models, YARA rules, z80, Zope page templates, and Zsh. See the manual for details about the corresponding supported checkers (:help syntastic-checkers in Vim).

hadolint - Dockerfile linter, validate inline bash, written in Haskell

  •    Haskell

A smarter Dockerfile linter that helps you build best practice Docker images. The linter is parsing the Dockerfile into an AST and performs rules on top of the AST. It is standing on the shoulders of ShellCheck to lint the Bash code inside RUN instructions. You can run hadolint locally to lint your Dockerfile.

reviewdog - :dog: Automated code review tool integrated with any code analysis tools regardless of programming language

  •    Go

"reviewdog" provides a way to post review comments to code hosting service, such as GitHub, automatically by integrating with any linter tools with ease. It uses an output of lint tools and posts them as a comment if findings are in diff of patches to review. reviewdog also supports run in the local environment to filter an output of lint tools by diff.

lint-staged - 🚫💩 — Run linters on git staged files

  •    Javascript

Linting makes more sense when running before committing your code. By doing that you can ensure no errors are going into repository and enforce code style. But running a lint process on a whole project is slow and linting results can be irrelevant. Ultimately you only want to lint files that will be committed. This project contains a script that will run arbitrary npm and shell tasks with a list of staged files as an argument, filtered by a specified glob pattern.

esprint - Fast eslint runner

  •    Javascript

esprint (pronounced E-S-sprint) speeds up eslint by running the linting engine across multiple threads. esprint sets up a server daemon to cache the lint status of each file in memory. It uses a watcher to determine when files change, to only lint files as necessary. It also has a CI mode where it does not set up a daemon and just lints in parallel. esprint will find the root of your project automatically and lint the whole project. In default mode, esprint will start a background server to watch source files and cache lint results in memory.

postcss-bem-linter - A BEM linter for postcss

  •    Javascript

A PostCSS plugin to lint BEM-style CSS.BEM-style describes CSS that follows a more-or-less strict set of conventions determining what selectors can be used. Typically, these conventions require that classes begin with the name of the component (or "block") that contains them, and that all characters after the component name follow a specified pattern. Original BEM methodology refers to "blocks", "elements", and "modifiers"; SUIT refers to "components", "descendants", and "modifiers". You might have your own terms for similar concepts.

phplint - :bug: A tool that can speed up linting of php files by running several lint processes at once

  •    PHP

`phplint` is a tool that can speed up linting of php files by running several lint processes at once. If you want to disable the config file, you can add option --no-configuration.