functional-typescript
functional-typescript copied to clipboard
Add support for generating http clients for different programming languages
With the strong typing info we have from an FTS Definition, we can generate type-safe client SDKs for different programming languages such as Java, Python, Objective-C, etc.
This would make consuming FTS services much easier and more portable as opposed to relying on the HTTP REST endpoints directly.
Quicktype may be useful for transforming the FTS JSON Schema into a variety of different languages.
Specifically, for a given target language, this functionality should take in one or more FTS Definitions as well as their respective HTTP endpoints and generate a minimal, syntactically correct wrapper.
Ideally this wrapper is a single file, but some languages may require additional plumbing (such as a Node.js package.json).
Target languages (ordered from highest priority to lowest)
- [ ] TypeScript
- [ ] JavaScript
- [ ] Python
- [ ] Java
- [ ] C#
- [ ] Ruby
- [ ] PHP
- [ ] Swift
- [ ] Rust
- [ ] Objective-C
This will be used directly by fin but may be useful to other developers interested in the FTS standard.
It'll be easier to first solve #13 and then use the OpenAPI schema and swagger-codegen to generate all client SDKs.