Hacker News new | ask | show | jobs
by williamcotton 162 days ago
An experimental DSL for writing web applications. It's pipeline oriented, polyglot and loosely inspired by Bash pipelines. Rust runtime, fully-featured TypeScript language server (jump to def, hover, etc), full DAP debugging and a BDD-style testing framework built into the language.

Runtime: https://github.com/williamcotton/webpipe/tree/webpipe-2.0

LSP (with GIFs): https://github.com/williamcotton/webpipe-lsp/tree/webpipe-2....

Looks like:

  GET /hello/:world
    |> jq: `{ world: .params.world }`
    |> handlebars: `<p>hello, {{world}}</p>`
  
  describe "hello, world"
    it "calls the route"
      let world = "world"
      
      when calling GET /hello/{{world}}
      then status is 200
      and selector `p` text equals "hello, {{world}}"