News for hackers. Stuff that matters.
Re:It's weird how design systems are so rote, yet so difficult by xenopticon on Thursday December 14, 2023 @12:27AM (#38638118)
To offer a different perspective, I believe the ecosystem around OpenAPI has vastly improved in the last year or so, at least in my technology stack (Node.js & TypeScript).

- I am currently building a product in the space and I've got competitors tackling the problem from many different angles

- Lots of tools & libraries to choose from when working with OpenAPI specifications (yes, lots of outdated stuff too)

- New platforms like Platformatic are making big bets on OpenAPI and building features around it

- People are using OpenAPI specs with ChatGPT to make custom integrations

For code-generation in particular, there's a handful of libraries that use OpenAPI specs to "glue" the backend and frontend together in different ways (ts-rest, openapi-fetch, openapi-types, orval, feTS). Many startups also offer seamless OpenAPI -> SDK generation.

It's an obvious resource at this point, but this site[1] is a good starting point.

[1] https://openapi.tools

Re:It's weird how design systems are so rote, yet so difficult by ShadowBanThis01 on Friday December 15, 2023 @05:11PM (#38659450)
Interesting, thanks. I haven't looked at it in about a year. If I remember correctly, the seemingly dominant generator is OpenAPI-Generator; the one that's written in Java with lots of independent modules for various combos of language and frameworks, using Moustache templates.

Among the available generator modules, there's way too much emphasis on Node. Heaven forbid you're using C++, because there was only one generator for that and it doesn't even create code that compiles.

Trying to create a custom generator means wading through reams of duplicated and outdated documentation in various places, and never even finding a list of the data entities that OpenAPI-generator extracts from an OpenAPI document.

Later on I mentioned OpenAPI to some developers (maybe on here, even) and they agreed that the ecosystem sucked so profoundly that even bringing it up in a professional development setting might be a liability to your reputation.

I consider anything before OAS 3.1 useless because it bafflingly prohibited you from applying a description to a reference. This means if you defined a data structure and used it in various places throughout your API, you couldn't annotate each use of it... largely defeating the purpose of the entire document. WTF! A blunder of that magnitude doesn't inspire confidence.

Looking at the page you mentioned, check out the list of server generators. Almost none are up to date. Once you whittle it down to the ones that support OAS 3.1, you wind up with most languages being unsupported.

And finally, the OAS editor I was using, StopLight Studio, has been discontinued; it was never updated to OAS 3.1 anyway. I haven't found a non-Web-based replacement for it, and that resources page doesn't list one that I can see.

Thus far, it's still looking pretty weak.

Re:It's weird how design systems are so rote, yet so difficult by xenopticon on Saturday December 16, 2023 @04:08PM (#38667692)
I think you're right. I see a lot of tools for Node.js, Python, and even Rust, but not so much for other languages.

I'm a bit frustrated with openapi.tools too, I think they could do a better job curating and keeping the tools updated. Their issues page on GitHub makes it look like they are not actively maintaining it. I actually bought openapi.cool this week and I'm thinking of building my own version of it.