spectrum
tsoa
spectrum | tsoa | |
---|---|---|
1 | 16 | |
112 | 3,136 | |
- | - | |
8.1 | 9.1 | |
5 days ago | 8 days ago | |
Go | TypeScript | |
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.
spectrum
-
OpenAPI Generator allows generation of API client libraries from OpenAPI Specs
Disclosure: I'm a contributor to the project.
OpenAPI Spec and auto-generated API clients are very useful when multiple languages need to be supported, like when running a developer program. I've worked at companies that both use OpenAPI Generator for official clients and ones that wrote our own tools for API client SDK generation (with different design philosophy). I've used a number of generators myself to compare and submitted fixes / enhancements to OpenAPI Generator. I used the Go client generator a while back and compared it to others, and recently started using the Crystal one.
To get the most the project, the following is useful: (a) need to support multiple languages, (b) ability to update the generator's code, both in Java and templates (Mustache or Handlebars), and (c) ability to discuss design in GitHub issues and the Slack channel.
The nice thing about OpenAPI Spec is that there is an ecosystem of tooling to support it, including rendering API references (HTML and PDF), API explorers (HTML pages to execute API calls), API clients, etc. But there is a learning curve. For writing specs by hand, I use and favor the Stoplight Studio IDE ( https://stoplight.io/studio ). For programmatically analyzing and editing specs, which is especially useful for finalizing auto-generated specs, I've built an OpenAPI Spec SDK library to make this easier ( https://github.com/grokify/spectrum ).
tsoa
-
Create Production-Ready SDKs with Goa
Tsoa is a popular TypeScript framework similar to Goa that you may encounter in the OpenAPI ecosystem. Speakeasy has a tutorial for it, too.
- JavaScript Gom Jabbar
-
Choosing a backend API framework
Currently i am using TSOA and loving it, it gives you automatic Open API specs and data validation based on typescript interfaces. I have used Nest on previous projects but I personally don't like the decorators hell that comes with Nest, and raw express/fastify are ok and easy to use but a pain in the ass on big projects to keep swagger, validations, interfaces and DTOs all in sync.
-
Does anyone here have any experience with TSOA? (tool for OpenAPI-compliant REST APIs using TypeScript and Node)
I'm curious if anyone here has played around with or used TSOA (https://github.com/lukeautry/tsoa)?
-
Is Express.js a good idea for backend?
If you decide to go with Express/Typescript I would definitely check out TSOA. It's a nice way to build backend APIs with auto documentation.
-
Swagger without express or koa or etc
We are using TSOA to generate the docs from the code, works pretty well. https://github.com/lukeautry/tsoa
-
OpenAPI Generator allows generation of API client libraries from OpenAPI Specs
This is the best project I’ve found to that for that - https://github.com/lukeautry/tsoa. Uses decorators mainly.
If there are other such projects, please share.
-
TypeScript-based REST API template to quickly bootstrap your next project
Hello, In the last month I built a REST API template in Typescript to quickly bootstrap new projects, I tried to use the most updated modules available, I've also included a "todo" sample just to showcase how all the things work together, the main modules that I've used are: - expressjs + tsoa that allows to easily generate the OpenAPI spec without any additional steps (just declare your controllers via typescript) - class-validator to validate body requests (this is also useful as the OpenAPI will be automatically generated based on the classes that you define) - Jest for testing, I've included also unit and integrations test samples with an in-memory database
-
Automatic swagger ui for nodejs/express? (Info in comments)
Have a look at [TSOA[(https://github.com/lukeautry/tsoa). While far from perfect (I am on the lookout to find a better solution), gets the job done. And generating the entire routing is a pretty neat trick, so that's also that.
-
How popular is typescript in backend development?
tsoa Lighter weight, but also great.
What are some alternatives?
smithy - Smithy is a protocol-agnostic interface definition language and set of tools for generating clients, servers, and documentation for any programming language.
Nest - A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript 🚀
k8s-openapi - Rust definitions of the resource types in the Kubernetes client API
Express - Fast, unopinionated, minimalist web framework for node.
fusionauth-openapi - FusionAuth OpenAPI client
fastify-openapi-glue - A plugin for the Fastify webserver to autogenerate a Fastify configuration based on a OpenApi(v2/v3) specification.
vcloud-rest-openapi - OpenAPI definitions for vCloud Director's Rest API
Koa - Expressive middleware for node.js using ES2017 async functions
openapi-generator - OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an OpenAPI Spec (v2, v3)
routing-controllers - Create structured, declarative and beautifully organized class-based controllers with heavy decorators usage in Express / Koa using TypeScript and Routing Controllers Framework.
oapi-codegen - Generate Go client and server boilerplate from OpenAPI 3 specifications
Hapi - The Simple, Secure Framework Developers Trust