Skip to content

Commit

Permalink
Add features list to README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
yceruto committed Dec 21, 2023
1 parent 00f7f08 commit 3c5337b
Showing 1 changed file with 21 additions and 0 deletions.
21 changes: 21 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,27 @@ openapi:
resource: '@OpenApiBundle/config/routes.php'
```

## Features

- [x] Generate OpenAPI spec from PHP attributes
- Operation, Schema and Property guessers from PHP classes and methods
- [x] Expose Swagger UI to explore the OpenAPI spec and test API endpoints
- [x] Export OpenAPI spec in JSON and YAML format (via HTTP and console command)
- [x] Import OpenAPI spec in JSON and YAML format (via config file)
- [x] Define Symfony routes and OpenAPI Paths using the same attributes:
- `#[Post]`, `#[Get]`, `#[Put]`, `#[Patch]`, `#[Delete]`
- [x] Conditional OpenAPI Path/Route definition:
- Example: `#[Get('/me', when: 'service("me_feature").isEnabled()')]`
- [x] Symfony attributes abbreviation:
- `#[Body]` instead of `#[MapRequestPayload]`
- `#[Query]` instead of `#[MapQueryString]`
- [x] OpenAPI attributes abbreviations:
- `#[Path]` instead of `#[PathParameter]`
- `#[Param]` instead of `#[QueryParameter]`
- [x] Symfony's validation constraints definition using OpenAPI attributes:
- Example: `#[Property(minLength: 3, maxLength: 255)]`
- [x] Serialize controller response (JSON format by default)

## License

This software is published under the [MIT License](LICENSE)

0 comments on commit 3c5337b

Please sign in to comment.