{"repo":"lispyclouds/navi","free":true,"listed":false,"github":"https://github.com/lispyclouds/navi","clone":"git clone https://github.com/lispyclouds/navi.git","description":"A tiny, data-driven library converting OpenAPI spec to Reitit routes enabling spec-first practices.","language":"Clojure","stars":74,"topics":["openapi","swagger","rest-api","api","clojure","data-driven"],"license":"MIT","category":"api-integrations-sdks","readme_excerpt":"navi A tiny library converting OpenAPI route definitions to Reitit routes. Suitable for spec-first servers. Features - Read OpenAPI 3 definitions as JSON or YAML - Remote and relative refs - Request and response coercions powered by Malli - requestBody coercion - Strings with uuid and pattern types - A large subset of OpenAPI types are currently supported, please raise an issue if something is unsupported Currently unsupported (raise an issue if needed!): - Other coercion libs - oneOf composed schema (mostly can be handled by anyOf ) - Any Type can mostly be worked around by omitting it completely - Some extra string formats Any contributions are much much welcome and appreciated! Installation Leiningen/Boot Clojure CLI/deps.edn Gradle Maven Usage Given a api.yaml : A clojure map of OperationId to handler fns: Generate the routes: Bootstrapping a Jetty server: Build Requirements - JDK 8+ - Clojure tools.deps Running tests locally - clojure -X:test to run all tests License Copyright © 2020- Rahul De Distributed under the MIT License. See LICENSE.","default_branch":null,"files":null,"tree":[],"storefront":"/r/lispyclouds","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/lispyclouds/navi/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}