14 pontos por samchon 2023-07-30 | 6 comentários | Compartilhar no WhatsApp

Ferramenta para gerar um SDK em TypeScript e um simulador de mocks a partir de um arquivo Swagger.json

O SDK (Software Development Kit) aqui inclui as seguintes funcionalidades:

  • coleção de funções fetch
  • estruturas DTO
  • simulador de mocks

Ao compilar e usar o SDK, fica muito mais simples e seguro para desenvolvedores de front-end (cliente) do que ler a documentação do Swagger e reescrever manualmente as funções fetch e os tipos DTO. Além disso, o trabalho de mockar o servidor de back-end com MSW também é automatizado, aumentando a produtividade.

6 comentários

 
roxie 2023-08-05

Ótimo texto, obrigado pela abordagem interessante. Talvez seja apenas uma preferência pessoal minha, mas acho que teria sido melhor se, na parte principal do texto, houvesse exemplos no estilo “se você inserir este código, algo que antes ficava assim passa a ficar assado”. Do jeito que está agora, quase não prende minha atenção.

 
kuber 2023-07-30

No ecossistema TS, é comum definir manualmente os tipos e as funções relacionadas olhando a documentação?

 
hyeonss0417 2023-07-31

A propósito, existe uma biblioteca chamada Tspec que gera automaticamente a especificação OpenAPI com base em tipos TypeScript haha

https://github.com/ts-spec/tspec

 
samchon 2023-07-31

Em TS, o código gerado pelo openapi-generator não é muito aproveitável.

 
kunggom 2023-07-30

De qualquer forma, parece que este texto é mais um guia de uso da ferramenta criada pelo próprio samchon, que publicou o post, então talvez fosse mais apropriado ir para o lado de Show GN.

De todo modo, acho uma boa ideia permitir autocompletar no cliente TypeScript usando o arquivo swagger.json. Por acaso isso também pode ser usado com outras stacks de backend além de NestJS?

 
samchon 2023-07-30

Basta conseguir gerar o swagger.json da especificação OpenAPI v3.0, independentemente da linguagem ou do framework.

Antes eu já tinha publicado um post no blog com a tag show GN, mas naquela época o administrador disse que em show GN só podem ser postados links do GitHub ou do projeto, então ele o moveu para um post comum.