Skip to content

Serverless Framework – Build and maintain web, mobile and IoT applications running on AWS Lambda and API Gateway (formerly known as JAWS) –

License

Notifications You must be signed in to change notification settings

fuyu/serverless

 
 

Repository files navigation

Serverless Application Framework AWS Lambda API Gateway

Serverless Framework (BETA)

Serverless is the application framework for building web, mobile and IoT applications exclusively on Amazon Web Services' Lambda and API Gateway. It's a command line interface that helps you build and maintain serverless apps across teams of any size. It's also completely extensible via Plugins. We believe AWS Lambda will be the focal point of AWS cloud, and the Serverless Framework interprets AWS from Lambda's perspective.

The Framework and its related tools are maintained by a dedicated, full-time team. For updates, join our Mailing List. We work on this live in our Gitter Chatroom. Please join us, everyone is welcome :)

Also, we are hiring. If you are a developer and these tools/ideologies appeal to you and you want to work on these all day long, please send us a message.

Features

  • Run/test AWS Lambda functions locally, or remotely
  • Auto-deploys, versions & aliases your Lambda functions
  • Auto-deploys your REST API to AWS API Gateway
  • Auto-deploys your Lambda events
  • Support for multiple stages
  • Support for multiple regions within stages
  • Manage & deploy AWS CloudFormation resources
  • Project Variables & Module Templates reduce configuration settings
  • Environment variable support
  • Assign multiple endpoints and events to a function
  • Interactive dashboard to easily select and deploy functions and endpoints
  • Optimize your Lambda functions for faster response times
  • Components allow for easy sharing of code across Lambda functions
  • Shareable project files and modules
  • 100% Extensible - Extend or modify the Framework and its operations via Plugins
  • Powerful classes and methods for easy plugin development
  • AWS best practices and optimizations built in
  • A fantastic and welcoming community!

Getting Started

Install The Serverless Framework via npm: (requires Node V4)

npm install serverless -g

You can either install an existing project or create your own. We recommend starting out with the Serverless-Starter

serverless project install serverless-starter

Or you can create your own project

serverless project create

Refer to our documentation for more info. Enjoy!

Links

Projects

Serverless Projects are shareable and installable. You can publish them to npm and install them via the Serverless Framework CLI by using $ serverless project install <project-name>

  • serverless-starter - A simple boilerplate for new projects with a few architectural options.
  • serverless-graphql-blog - A blog boilerplate that leverages GraphQL in front of DyndamoDB to offer a minimal REST API featuring only 1 endpoint.

Plugins

Serverless is composed of Plugins. A group of default Plugins ship with the Framework, and here are some others you can add to improve/help your workflow:

  • Plugin Boilerplate - Make a Serverless Plugin with this simple boilerplate.
  • Serve - Simulate API Gateway locally, so all function calls can be run via localhost.
  • Alerting - This Plugin adds Cloudwatch Alarms with SNS notifications for your Lambda functions.
  • Optimizer - Optimizes your code for performance in Lambda.
  • CORS - Adds support for CORS (Cross-origin resource sharing).
  • CloudFormation Validator - Adds support for validating your CloudFormation template.
  • Prune - Delete old versions of AWS lambdas from your account so that you don't exceed the code storage limit.
  • Base-Path - Sets a base path for all API Gateway endpoints in a Component.
  • Test - A Simple Integration Test Framework for Serverless.
  • SNS Subscribe This plugin easily subscribes your lambda functions to SNS notifications.

Contributing

We love our contributors! If you'd like to contribute to the project, feel free to submit a PR. But please keep in mind the following guidelines:

  • Propose your changes before you start working on a PR. You can reach us by submitting a Github issue, or discuss it in the Gitter Chatroom. This is just to make sure that no one else is working on the same change, and to figure out the best way to solve the issue.
  • If you're out of ideas, but still want to contribute, check out our Road Map. There's a lot we want to get done, and we'd love your help!
  • Contributions are not just PRs! We'd be grateful for having you in our community, and if you could provide some support for new comers, that be great! You can also do that by answering Serverless related questions on Stackoverflow.
  • You can also contribute by writing. Feel free to let us know if you want to publish a useful original guide in our docs (attributed to you, thank you!) that you feel will help the community.

Consultants

These consultants use the Serverless Framework and can help you build your serverless projects.

About

Serverless Framework – Build and maintain web, mobile and IoT applications running on AWS Lambda and API Gateway (formerly known as JAWS) –

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 98.8%
  • Python 1.2%