Fantom
Fantom is a cli tool for generating API layer based on OpenAPI Spec.
Usage
- Install
fantom
$ dart pub global activate fantom
- Generate API client
$ fantom generate openapi.yaml --dir=lib/src/network
lib/src/network/model
directory and APIs inlib/src/network/api
directory
More Advanced Options
-
Separate models and APIs directories
$ fantom generate openapi.yaml --model-dir=lib/src/model --api-dir=lib/src/network
-
Generate API layer as a standalone dart package
$ fantom generate openapi.yaml --package=packages/network
Note: it will generates a package called
network
insidepackages/network
from wherefantom generate
command runs. -
Define configs inside
pubspec.yaml
$ fantom generate # or $ fantom generate pubspec.yaml
Your
pubspec.yaml
file:fantom: - openapi: openapi.yaml - api-dir: lib/src/network - model-dir: lib/src/model # or fantom: - openapi: openapi.yaml - dir: lib/src/network # or fantom: - openapi: openapi.yaml - package: packages/network
Activate from Source
Activate fantom
from source code:
$ export PATH="$PATH":"$HOME/.pub-cache/bin"
$ dart pub global activate --source path path_to/fantom
To deactive:
$ dart pub global deactivate fantom