This codebase houses the dart/flutter implementations of the openapi client sdk code generation libraries.
With this project, you can generate openapi client sdk libraries for your openapi specification right in your flutter/dart projects. (see example)
This repo contains the following dart libraries
Library | Description | latest version |
---|---|---|
openapi-generator | Dev dependency for generating openapi sdk via dart source gen see here for usage | |
openapi-generator-annotations | Annotations for annotating dart class with instructions for generating openapi sdk see here for usage | |
openapi-generator-cli | Cli code openapi sdk generator for dart see here for usage |
Include openapi-generator-annotations as a dependency in the dependencies section of your pubspec.yaml file :
dependencies:
openapi_generator_annotations:
git:
url: https://github.com/YoungAgency/openapi-generator-dart.git
ref: v1.0.0
path: openapi-generator-annotations
Add openapi-generator in the dev dependencies section of your pubspec.yaml file:
dev_dependencies:
openapi_generator:
git:
url: https://github.com/YoungAgency/openapi-generator-dart.git
ref: v1.0.0
path: openapi-generator
Annotate a dart class with @Openapi() annotation
@Openapi(
additionalProperties:
AdditionalProperties(pubName: 'petstore_api', pubAuthor: 'Johnny dep'),
inputSpecFile: 'example/openapi-spec.yaml',
generatorName: Generator.dart,
outputDirectory: 'api/petstore_api')
class Example extends OpenapiGeneratorConfig {}
Run
flutter pub run build_runner build --delete-conflicting-outputs
to generate open api client sdk from spec file specified in annotation. The api sdk will be generated in the folder specified in the annotation. See examples for more details
Please file feature requests and bugs at the issue tracker.