8000 GitHub - deem0n/oal: A high-level language for OpenAPI
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

deem0n/oal

 
 

Repository files navigation

Build License

The Oxlip API Language

Oxlip is a high-level functional programming language for designing OpenAPI definitions. As an Interface Description Language, it is not general purpose. The motivation is to alleviate the pain of managing OpenAPI in JSON or YAML by hand and at scale. Oxlip defines algebraic abstractions over REST concepts, not too dissimilar to Sass/SCSS over CSS.

There are pros and cons to both API-design-first and OpenAPI generated from implementation. As OpenAPI is better produced or consumed by machines rather than humans, Oxlip tries to help API-design-first teams with better tooling.

Installation

This step requires a local Rust and Cargo installation.

make install

Optional: a VSCode language extension is available for syntax highlighting and IDE capabilities.

Usage

    oal-cli [OPTIONS]

OPTIONS:
    -b, --base <BASE>        The relative URL to a base OpenAPI description
    -c, --conf <CONFIG>      The path to the configuration file
    -h, --help               Print help information
    -m, --main <MAIN>        The relative URL to the main program
    -t, --target <TARGET>    The relative URL to the target OpenAPI description

Compiling the example program

oal-cli --conf examples/oal.toml

Experimental: WebAssembly support

Release to WebAssembly requires the installation of wasm-pack.

make wasm

About

A high-level language for OpenAPI

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 99.8%
  • Other 0.2%
0