tonik 0.0.3
tonik: ^0.0.3 copied to clipboard
A Dart code generator for OpenAPI 3.0 and 3.1 specifications.
Tonik #
A Dart code generator for OpenAPI 3.0 and 3.1 specifications.
⚠️ Warning #
This project is currently in an early development phase. Users should expect:
- Breaking changes in future releases
- Potential bugs and issues
- Missing features (see Roadmap section below)
Motivation #
There are already numerous projects available to generate Dart code from OpenAPI documents. But all lack certain, most often critical features. They might not support integer enums, composable data types (oneOf, anyOf, allOf), fail if you use existing class names in Dart or dependencies (e.g. Response of dio) or handle only success responses.
This package aims to overcome these shortcomings.
Features #
coming soon
Usage #
coming soon
Roadmap #
Short term goals #
allowReservedsupport for query parametersformat: urimapping to DartUri- Add custom
Datemodel in util package to handleformat: dateproperly - More E2E tests
- Full decoding and encoding support for all of, any of and one of
- Support for
x-dart-name,x-dart-typeandx-dart-enums - Annotate deprecated fields, methods and classes.
- Respect
nullableproperty on schema objects - Add doc strings based on fields in the spec to fields, classes and methods
Long term goals #
- Supporting the
notkeyword - Encoding and decoding of
application/x-www-form-urlencodedandtext/plain - Optionally generating
unknownenum case - Support for
additionalProperties - Server Templating support
- Remove build_runner dependency from all packages
- Default values
- Supporting
byteandbinaryformatted strings
Non-goals #
- Parameter encoding via content, see schema vs content
- XML de- and encoding
- Min, Max and multiple validation
- Pattern validation
- Remote and URL references