Metarpheus sifts through scala source files and extracts models (represented in scala as case class
es) and Wiro operations.
It will output a json-based representation of models and APIs that can be subsequently transformed in:
- javascript type definitions (e.g. TypeScript, flow, tcomb)
- javascript http clients
- language-agnostic representation (e.g. Swagger)
- human-readable API documentation
Metarpheus can be used either as a packaged JAR or as a Node.js npm package.
To run as jar, run
sbt cli/assembly
Then you can take the generated jar and run it with
java -jar metarpheus.jar --config config.json # config is optional
To run as npm package, refer to the npm package README