libninja
typespec | libninja | |
---|---|---|
8 | 5 | |
2,851 | 67 | |
21.3% | - | |
9.7 | 8.3 | |
7 days ago | 11 days ago | |
TypeScript | Rust | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
typespec
-
Write OpenAPI with TypeSpec
It does not exist, but it will be worked on fairly soon. You can track progress on GitHub [1]. It will be as you suggest - a one time conversion, after which you can iterate. We have this workflow for inside Azure, but the converter is Azure-specific (e.g. converts to TypeSpec that uses our extensive Azure-specific component library). It will take a bit to generalize.
[1]: https://github.com/microsoft/typespec/issues/3038
- TypeSpec
-
Write SDK “base” in Rust, wrap in other languages?
Afaik there's nothing that's widely used and of which I'd say I prefer it. But I'm having hopes for https://github.com/microsoft/typespec (former cadl). The reason being that yaml/JSON specs get huge very quickly, OpenAPI has to fight with restrictions of yaml/JSON ($refs, splitting up into files, oneOf, etc.) and tooling is ok but not great.
-
Ask HN: Why is there no specification for Command Line Interfaces?
You've touched on some use cases I've thought about and led me to ask the question.
I also recently saw Microsoft take a higher level approach with CADL/Typespec: https://microsoft.github.io/typespec/ which could be cool if it reaches wide adoption.
- Cadl
- Cadl: a language to describe APIs and generate schemas
- Cadl: A language to describe APIs and generate schemas
-
Cadl: a new IDL
This one just crossed my feed today: Cadl, "... a language for describing cloud service APIs and generating other API description languages, client and service code, documentation, and other assets."
libninja
-
OpenAPI REST service client codegen question
Check out https://github.com/kurtbuilds/libninja . It'll give clients that are dramatically more idiomatic compared to openapi-generator.
-
Tips on Creating a Design-First API Using Rust
You might check out https://github.com/kurtbuilds/libninja
-
Write SDK “base” in Rust, wrap in other languages?
If you're talking about client libraries (like Stripe), I encourage you to check out https://github.com/kurtbuilds/libninja
-
Frameworks for creating a REST API server and automatically generating a reqwest client?
It uses httpclient instead of reqwest, but check out https://github.com/kurtbuilds/libninja for idiomatic OpenAPI client generation from the spec. I haven't tested httpclient on wasm, but no reason to think it wouldn't work.
-
Tool to generate API client libraries (for Rust & other langs)
I started building a Rust-based toolchain to generate API client libraries, which became openapi-client-generator.
What are some alternatives?
guardrail - Principled code generation from OpenAPI specifications
plaid-rs - Rust client library for Plaid, generated from Plaid's OpenAPI spec
core-crypto - MLS/Proteus multiplexer abstraction with encrypted persistent storage in Rust
benchling-rs - benchling client, generated from the OpenAPI spec
rutie - “The Tie Between Ruby and Rust.”
smithy-rs - Code generation for the AWS SDK for Rust, as well as server and generic smithy client generation.
connexion - Connexion is a modern Python web framework that makes spec-first and api-first development easy.
vmd
wasmer - 🚀 The leading Wasm Runtime supporting WASIX, WASI and Emscripten
sendgrid-rs - Sendgrid client, generated from the OpenAPI spec
vcr - Record your test suite's HTTP interactions and replay them during future test runs for fast, deterministic, accurate tests.
rust-example-caster-api - DEPRECATED: A demo Rust API implementation using Tokio, Axum, async-graphql, and SeaORM