The stack includes its own command-line interface to test and deploy API Lambda functions locally, and includes a library module for code reusability. The JAWS back end is comprised entirely of Lambda functions.
According to its GitHub repository, this week’s open-source project of the week has a specific set of goals:
- Use No Servers: JAWS eliminates the need to scale, deploy, maintain and monitor servers.
- Isolated Components: Developers can develop, update or configure each Lambda function separately without affecting any other part of an application. Only individual API routes can go down, not an entire app.
- Scale Infinitely: Lambda back-end features concurrency and the option to enable multi-region redundancy for massive scaling.
- Be Cheap as Possible: Lambda functions run only when they are called, and developers only pay for when they are run.
Servant, the open-source application and database-tooling provider that gave JAWS life, has also laid out a road map for the stack’s open-source development. Plans include:
- Incorporating the AWS API Gateway Swagger Import Tool
- Writing swagger.json for current API functions
- Adding Swagger import commands to the CLI
- Modifying the site to use API Routes post-deployment
- Writing a JAWS CLI command to build and deploy site assets
- Writing more API examples
A diagram breaking down the JAWS stack’s architecture is available below: