by fcoury on 8/31/2022, 5:01:27 PM
by AChelikani on 8/31/2022, 5:32:58 PM
Congrats Sagar and team - excited that someone is working on this! OpenAPI generator and swagger codegen has almost always produced unreadable and unusable SDKs for me, especially when my schema contains any model composition or polymorphism with allOf/anyOf/oneOf.
Have you guys written this entirely from scratch or done your own mustache templating on top of openapi-generator?
by kbanman on 8/31/2022, 5:26:02 PM
Congrats on launching!
For anyone looking for more (open-source) alternatives, here's one I just discovered today: https://microsoft.github.io/kiota/
by nurettin on 8/31/2022, 6:19:15 PM
Reminds me of how visual studio used to produce .net client code in vb or c# when you gave it a wsdl URL. You could do the same thing with Delphi. It had a command line program to generate a client interface. And a Ruby gem could just generate calls on the fly with method_missing. Turns out that having a web service definition language and concrete types to generate it automatically is a really useful thing. A thing that we somehow seem to have lost on the road.
by tyho on 8/31/2022, 9:11:45 PM
This has been something I have desperately wanted for years now. The execution looks very good.
This easily shaves hours off a production quality api integration.
by simplesager on 8/31/2022, 8:37:22 PM
Client SDKs are a great way to provide a normalised and predictable experience for customers but we're also working on tools for API Producers to self service all parts of the API integration experience. Check out our website! https://www.speakeasyapi.dev/.
by ThomasRooney on 8/31/2022, 5:18:00 PM
Hey all ! I worked on this with Sagar a couple weeks back. The tl;dr of this is that it generates a (in my heavily-biased opinion) relatively clean SDK given an OpenAPI schema, similar to what a human would write. We’d used several other OpenAPI SDK generators but found their result to be a bit too big (and not tree-shakable); so spent a bit of effort trying to work out a way to compile-in the OpenAPI spec into a thin (but statically typed) wrapping around axios — very similar to an SDK coded manually.
Here's a few examples:
1. The Petstore API (an tiny example): https://easysdk.xyz/sdk/petstore.json-7bb7c53e017c0f7432f7bd...
2. Our own API: https://easysdk.xyz/sdk/openapi.yaml-ee89154ee9cf9a77f9fb07d...
3. The LOTR API: http://easysdk.xyz/sdk/lotr.yaml-f1ec4cde1ca7839dca2685e283e...
The generator works by:
1. Dereferencing an OpenAPI specification into something with inline types. (Ideally we'd handle type references rather than inlining them, but haven't got there yet)
2. Walking the type-graph, and mapping it to Operations (a combination of Path and Method).
3. Using the Typescript SDK, generating the SDK via creating AST nodes whilst walking the type graph.
4. Trying to compile in:
1. Path Parameters as ES6 Template strings (e.g. `"/v1/apis/{apiID}/api_endpoints"` => `/v1/apis/${props.apiID}/api_endpoints`)
2. Query params into axios parameters
3. Body params as an additional argument to the SDK
It's not perfect, but we've used this to help run our own unit tests (and have a few customers trying it out too)! Happy to answer any questionsby mrami on 8/31/2022, 6:56:16 PM
If anyone finds it useful, I have a Maven plugin that does something similar for Java (Java -> TypeScript)
For anybody that still uses Java. :D
https://github.com/BlueCircleSoftware/bluecircle-json-interf...
by simplesager on 8/31/2022, 11:07:17 PM
Come join us on Slack if you have any questions on using the SDKs ! https://join.slack.com/t/speakeasy-dev/shared_invite/zt-1df0...
by irinaid on 8/31/2022, 6:01:16 PM
Congrats on the launch, this looks great and I'm looking forward to using it!
by cuddlecake on 8/31/2022, 8:37:01 PM
Hi, congrats on the launch.
On my screen, the website is scrollable. Not sure if the animation needs to have top: 30vh and height: 80%
Also: there is a big layout shift right after loading.
by lagrange77 on 8/31/2022, 6:11:45 PM
Interesing product, congrats!
Would you mind to share, how the animation was made? I would imagine sth. like blender + after effects + lottie..
by memat on 9/1/2022, 2:52:34 AM
this is amazing and was months of work at my prev job to build internally. After it was built it freed up a whole dev team to do more mission critical work.
by yodon on 8/31/2022, 5:06:00 PM
Nice! Any plans for generating C# sdk's?
by crumbaugh on 8/31/2022, 5:01:33 PM
Looks pretty cool. Any eta on golang support?
by dansomrack on 8/31/2022, 5:13:31 PM
Congrats on the launch, Sagar!
by kybball on 8/31/2022, 5:21:37 PM
This is fantastic!
by kamilafsar on 8/31/2022, 6:35:59 PM
Wow, what a coincidence :D We are about to launch something similar: https://samen.io
Congrats on the launch!
I think it might be interesting to provide some examples without the need to upload a schema, since I assume most people playing with it won't have one ready right off the bat.