JAWS V1 (BETA)
Status 9/21: We've just released JAWS V1 BETA. Please test, submit bug fixes and let us know what you think! We'll be working through the week to improve our documentation and fix bugs. Check out our Road Map below to see what's next.
JAWS is an open-source framework for building serverless applications (web, mobile, IoT) using Amazon Web Services' Lambda, API Gateway, and more. Lambda's event-driven model offers tremendous cost savings and colossal horizontal scaling ability. Now, JAWS helps you build and maintain entire applications built on Lambda.
Quick Start
-
$ npm install jaws-framework -g -
$ jaws new project
Note: We recommend camelCase for project names. Why?
-
$ cd <new-project-name> -
$ jaws module create users list -
$ jaws dash
This will create a new jaws project, create a lambda function with an API Gateway endpoint, which you can immediately deploy via
jaws dash. After deployment is complete, you will be given a url. In the above example, you can access your
deployed lambda at your_url/users/list.
Overview:
JAWS is an application framework for building serverless web, mobile and IoT applications. JAWS comes in the form of a command line interface that provides structure, automation and optimization to help you build and maintain your serverless app.
JAWS uses AWS services exclusively, since it relies on AWS's Lambda service to provide event-driven compute resources, and many AWS services integrate nicely with Lambda. A JAWS app can be simply a group of lambda functions to accomplish some tasks, or an entire back-end comprised of hundreds of lambda functions.
In JAWS V1, we made a strong effort to make not just a groundbreaking serverless framework, but the best framework for building applications with AWS in general (that is also serverless!). As a result, JAWS V1 incorporates years of AWS expertise into its tooling, giving you best practices out-of-the-box.
JAWS applications' back-end runs on AWS Lambda functions which can be seen in the back folder. To encourage the development of re-usable, standardized and optimized lambda functions, JAWS keeps all of your app's lambda functions in the AWS-Module (awsm) format. This format was created for JAWS, and the JAWS CLI features commands to help you generate scaffolding for your aws_modules.
Possibly the best feature of aws_modules is they make it easy for developers to publish and share their lambda functions and encourage a module ecosystem. In the near future, when you are building your serverless app, you will be able to select from a large variety of pre-written lambda functions, designed by the JAWS community for re-use, optimization, easy installation and deployment!
Documentation
We're currently working on our docs, wiki, best practices and FAQ pages.
Once you become familiar with JAWS, you can read about JAWS AWSM: Amazon Web Services Modules to start contributing awsm's to the community.
How can I help?
Please check out the JAWS V1 Google Document and our CONTRIBUTING.md for coding and PR guidelines.





