shipwithjev

Catalog / Tools & apps

0108GitHub

jevcumber

Cucumber tests from the .feature file alone. No step definitions.

RubyBrewsday/jevcumberREADME ↗
# 🥒 jevcumber

**[jevcumber.dev](https://jevcumber.dev)** — site and demo video

[](https://www.npmjs.com/package/jevcumber)
[](https://github.com/RubyBrewsday/jevcumber/actions/workflows/ci.yml)
[](https://skills.sh/RubyBrewsday/jevcumber)
[](LICENSE)

**Write Cucumber tests with just the `.feature` file. No step definitions.**

```gherkin
Feature: Wikipedia search

  Scenario: Looking up bagels
    Given I am on https://en.wikipedia.org
    When I search for "bagel"
    Then I see an article about bagels
    And the URL should contain "/wiki/Bagel"
```

```console
$ jevcumber examples/ --frozen
Feature: Wikipedia search
  Scenario: Looking up bagels
    ✓ Given I am on https://en.wikipedia.org
    ✓ When I search for "bagel"
    ✓ Then I see an article about bagels
    ✓ Then the URL should contain "/wiki/Bagel"

1 scenarios (1 passed) · 4 steps (4 passed)
```

That's the whole test. There is no glue code behind it.

## How it works

jevcumber opens your site in a real browser with [Playwright](https://playwright.dev) and, for each
Gherkin step, asks [Jev](https://docs.typesafe.ai) — TypeSafe AI's fast *System One* model — what the
step means **on the page in front of it**.

Jev never writes code or invents values. jevcumber lists what's actually there — the page's buttons,
fields and links, and the literal values in your step — and Jev *picks* among them:

| Your step | jevcumber asks | Jev picks |
| --- | --- | --- |
| `When I search for "bagel"` | what kind of action is this? | **fill** |
| | which control? `Search Wikipedia`, `Log in`, `Donate`… | **Search Wikipedia** |
| | which literal is the text to type? | **"bagel"** |
| | type only, or type and submit? | **submit** |

All of those questions go out in one request (about a second), each answer comes back with

Also filed under Tools & apps

  1. 0616

    Jevstiller: distill Jev calls into a local model

    A self-hosted proxy that trains a local model on Jev's answers. It served 72% of Banking77 locally at 15 ms, with a 2% audit and a bound on disagreement.

    tomerglick57 · Tools & apps · 15 ms local

  2. 0611

    Scruple: code checks for what linters miss

    Semantic-aware linting with System One models: rules you can state in a sentence, checked against your code by Jev.

    @nalexpeae · Tools & apps

  3. 0606

    Algolia-style Postgres search with a Jev reranker

    Typo tolerance, typeahead, barcodes and facet counts in plain Postgres SQL, plus an optional Jev step that asks one question per top-10 result.

    @alex_forman1 · Tools & apps

  4. 0604

    Virtual Closet: outfits from closet videos

    built a virtual closet & outfit generator from raw closet videos. classification + semantic search thanks to jev 🥰. clueless closet dreams finally coming to life

    @maitreemervana · Tools & apps