Last updated:
0 purchases
awsprototypingsdk.typesafeapi 0.19.68
Type Safe API
Define your APIs using Smithy or OpenAPI v3, and leverage the power of generated client and server types, infrastructure, documentation, and automatic input validation!
This package vends a projen project type which allows you to define an API using either Smithy or OpenAPI v3, and a construct which manages deploying this API in API Gateway, given an integration (eg a lambda) for every operation.
The project will generate "runtime" projects from your API definition in your desired languages, which can be utilised both client side for interacting with your API, or server side for implementing your API. The project also generates a type-safe CDK construct which ensures an integration is provided for every API operation.
Code is generated at build time, so when you change your API model, just rebuild and you'll see your changes reflected in the generated code.
Project Structure
The TypeSafeApiProject projen project will create the following directory structure within its outdir:
|_ model/
|_ src/
|_ main/
|_ smithy - your API definition if you chose ModelLanguage.SMITHY
|_ openapi - your API definition if you chose ModelLanguage.OPENAPI
|_ generated/
|_ runtime/ - generated types, client, and server code in the languages you specified
|_ typescript
|_ python
|_ java
|_ infrastructure/ - generated infrastructure (you'll find only one directory in here based on your chosen infrastructure language)
|_ typescript
|_ python
|_ java
|_ documentation/ - generated documentation in the formats you specified
|_ html2
|_ html_redoc
|_ plantuml
|_ markdown
|_ library/ - generated libraries if specified
|_ typescript-react-query-hooks
Getting Started
Please see the Getting Started Guide for how to get started!
Developer Guides
For more information about Type Safe API, take a look at the developer guides:
Using Smithy
Using OpenAPI
Integrations
Mocking Responses
Authorizers
Lambda Handlers
React Query Hooks
API Keys
Walkthroughs
For detailed end-to-end examples, take a look at the walkthroughs:
Custom Integration: ECS and NLB
You can also check out the Frequently Asked Questions.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.