Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/flutterando/shelf_swagger_ui

Swagger UI plugin for Shelf
https://github.com/flutterando/shelf_swagger_ui

dart shelf

Last synced: 1 day ago
JSON representation

Swagger UI plugin for Shelf

Awesome Lists containing this project

README

        

# Shelf SwaggerUI
Present, clean and professional documentation with Swagger + shelf;
![alt text](https://raw.githubusercontent.com/Flutterando/shelf_swagger_ui/main/example.png)

## Example

Get a YAML or JSON schema file. Ex: (specs/swagger.yaml)
```yaml
openapi: 3.0.0
info:
description: "API system"
version: "1.0.10"
title: "Swagger Test"
servers:
- url: http://my-service.info
description: Remote server
tags:
- name: "user"
description: "Access to User"

```

Configure the handler with Shelf:

```dart
import 'package:shelf/shelf_io.dart' as io;
import 'package:shelf_swagger_ui/shelf_swagger_ui.dart';

void main(List args) async {
final path = 'specs/swagger.yaml';
final handler = SwaggerUI(path, title: 'Swagger Test');
var server = await io.serve(handler, '0.0.0.0', 4001);
print('Serving at http://${server.address.host}:${server.port}');
}
```

That`s it!