{"id":13608527,"url":"https://github.com/temando/open-api-renderer","last_synced_at":"2025-10-17T00:52:23.647Z","repository":{"id":57333926,"uuid":"86389954","full_name":"temando/open-api-renderer","owner":"temando","description":"🎩 A React renderer for OpenAPI v3.","archived":false,"fork":false,"pushed_at":"2019-03-05T18:56:04.000Z","size":4360,"stargazers_count":153,"open_issues_count":24,"forks_count":10,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-06-05T19:05:39.757Z","etag":null,"topics":["open-api","open-api-v3","openapi","react","swagger"],"latest_commit_sha":null,"homepage":"https://temando.github.io/open-api-renderer/demo/?url=https://temando.github.io/open-api-renderer/petstore-open-api-v3.0.0-RC2.json","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/temando.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-03-27T22:26:14.000Z","updated_at":"2025-04-05T03:36:39.000Z","dependencies_parsed_at":"2022-09-09T08:40:36.590Z","dependency_job_id":null,"html_url":"https://github.com/temando/open-api-renderer","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/temando/open-api-renderer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/temando%2Fopen-api-renderer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/temando%2Fopen-api-renderer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/temando%2Fopen-api-renderer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/temando%2Fopen-api-renderer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/temando","download_url":"https://codeload.github.com/temando/open-api-renderer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/temando%2Fopen-api-renderer/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259964330,"owners_count":22938724,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["open-api","open-api-v3","openapi","react","swagger"],"created_at":"2024-08-01T19:01:28.002Z","updated_at":"2025-10-17T00:52:18.600Z","avatar_url":"https://github.com/temando.png","language":"JavaScript","readme":"# Lincoln\n\n\u003cimg src='assets/lincoln-logo-white.png' alt='Lincoln' height=\"96\" width=\"96\" /\u003e\n\n[![NPM](https://img.shields.io/npm/v/react-lincoln.svg)](https://npmjs.org/packages/react-lincoln/)\n[![Travis CI](https://img.shields.io/travis/temando/open-api-renderer.svg)](https://travis-ci.org/temando/open-api-renderer)\n[![MIT License](https://img.shields.io/github/license/temando/open-api-renderer.svg)](https://en.wikipedia.org/wiki/MIT_License)\n[![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)\n\nMeet Lincoln, a [React](https://facebook.github.io/react/) component for rendering [OpenAPI](https://www.openapis.org) documents. The project is tracking against [v3.0.0](docs/open-api-v3-support.md) of the OpenAPI specification.\n\nLincoln aims to support evergreen browsers, such as Chrome, Firefox, Safari and IE11+. It is responsive and should be usable on most modern devices.\n\n[Demo](https://temando.github.io/open-api-renderer/demo/?url=https://temando.github.io/open-api-renderer/petstore-open-api-v3.0.0-RC2.json)\n\n## Installation\n\n```sh\nnpm install --save react react-dom react-lincoln\n```\n\n## Usage\n\nTo use Lincoln in your React project:\n\n```js\nimport React from 'react'\nimport ReactDOM from 'react-dom'\nimport Lincoln from 'react-lincoln'\n\nReactDOM.render(\n  \u003cLincoln definitionUrl='https://temando.github.io/open-api-renderer/petstore-open-api-v3.0.0-RC2.json' /\u003e,\n  document.body\n)\n```\n\nAlternatively, you can pass the contents of the definition directly to Lincoln:\n\n```js\nimport React from 'react'\nimport ReactDOM from 'react-dom'\nimport Lincoln from 'react-lincoln'\nimport definition from './myApi.yml'\n\nReactDOM.render(\u003cLincoln definition={definition} /\u003e, document.body)\n```\n\n## Configuration\n\nThe following configuration options are available:\n\n| property                        | required | type    | description                                                                                                                                                                                                                         |\n| ------------------------------- | -------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `definitionUrl` or `definition` | ✔        | string  | CORS-enabled URL to, or contents of, OpenAPI v3 document to render. Supports JSON or YAML.                                                                                                                                          |\n| `navSort`                       |          | enum    | This property applies when your definition uses `tags`. Valid values are `alpha` which sorts by HTTP method, then path or `false`, which will display paths as defined. Defaults to `false`.                                        |\n| `validate`                      |          | boolean | If `true`, uses [Mermade](https://openapi-converter.herokuapp.com/) to validate definition. Defaults to `false`.                                                                                                                    |\n| `initialSchemaTreeDepth`        |          | number  | The initial opened tree depth for schema visualiser when first rendered. This is useful when the schema's actual contents is a couple of levels deep, and you want to expand the tree to the contents automatically. Defaults to 0. |\n| `navigationMethodDisplayType`   |          | string  | Regulates how the navigation items are rendered - path only, summary only, or both. The possible values are `summary` (default), `path`, or `all`. In case of any other value only the summary is rendered.                         |\n\n## Philosophy\n\nWhile this project is currently focused on visualising OpenAPI V3 specifications, it is architected in such a way that the React components deal with a `UIReadySchema`, which is a generic specification (admittedly heavily based on OpenAPI V3).\n\nThe dream is that this renderer could visualise other formats by introducing new parsers which transform documents into the common `UIReadySchema` format. This approach allows us to build something sustainable and scalable, where the community can help contribute new parsers (among other things!) as required.\n\nThe project is definitely in its infancy and we are not ready for that yet, but we hope by sharing this vision early, others can help make it a reality. For contributing information, see [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## Credit\n\n- The [ReDoc](https://github.com/Rebilly/ReDoc) project inspired Lincoln. If you're looking for an alternative renderer, give ReDoc a try!\n- [swagger2openapi](https://github.com/mermade/swagger2openapi) which Lincoln uses to validate definitions.\n\n## Maintainers\n\nLincoln is an open source project from [Temando](http://temando.com/)'s Developer Experience team. Temando connects carriers with retailers and retailers to people. The Temando Platform combines shipping experiences, multi-carrier connectivity and lightning fast fulfillment in one solution. If this sounds like fun, [work with us](http://temando.com/en/about/careers)!\n","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftemando%2Fopen-api-renderer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftemando%2Fopen-api-renderer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftemando%2Fopen-api-renderer/lists"}