3 ms·
An experimental DSL for writing web applications. It's pipeline oriented, polyglot and loosely inspired by Bash pipelines. Rust runtime, fully-featured TypeScri
by williamcotton 10mo 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 https://github.com/williamcotton/webpipe/tree/webpipe-2.0
LSP (with GIFs): https://github.com/williamcotton/webpipe-lsp/tree/webpipe-2.0 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}}"