1.9.0 • Published 7 years ago

serverless_ned v1.9.0

Weekly downloads
6
License
MIT
Repository
github
Last release
7 years ago

Serverless Application Framework AWS Lambda API Gateway

serverless Build Status npm version Coverage Status gitter dependencies license

WebsiteDocsNewsletterGitterForumMeetupsTwitter

The Serverless Framework – Build applications comprised of microservices that run in response to events, auto-scale for you, and only charge you when they run. This lowers the total cost of maintaining your apps, enabling you to build more logic, faster.

The Framework uses new event-driven compute services, like AWS Lambda, Google CloudFunctions, and more. It's a command-line tool, providing scaffolding, workflow automation and best practices for developing and deploying your serverless architecture. It's also completely extensible via plugins.

Serverless is an MIT open-source project, actively maintained by a full-time, venture-backed team.

Watch the video guide here.

Serverless Framework Feedback Survey

Contents

Quick Start

Watch the video guide here or follow the steps below to create and deploy your first serverless microservice in minutes.

  1. Install via npm:

    npm install -g serverless
  2. Set-up your Provider Credentials. Watch the video on setting up credentials

  3. Create a Service:

    You can create a new service or install existing services.

    # Create a new Serverless Service/Project
    serverless create --template aws-nodejs --path my-service
    # Change into the newly created directory
    cd my-service
  4. Deploy a Service:

    Use this when you have made changes to your Functions, Events or Resources in serverless.yml or you simply want to deploy all changes within your Service at the same time.

    serverless deploy -v
  5. Deploy the Function:

    Use this to quickly upload and overwrite your AWS Lambda code on AWS, allowing you to develop faster.

    serverless deploy function -f hello
  6. Invoke the Function:

    Invokes an AWS Lambda Function on AWS and returns logs.

    serverless invoke -f hello -l
  7. Fetch the Function Logs:

    Open up a separate tab in your console and stream all logs for a specific Function using this command.

    serverless logs -f hello -t
  8. Remove the Service:

    Removes all Functions, Events and Resources from your AWS account.

    serverless remove

How to Install a Service:

This is a convenience method to install a pre-made Serverless Service locally by downloading the Github repo and unzipping it. Services are listed below.

serverless install -u https://github.com/your-url-to-the-serverless-service

Check out the Serverless Framework Guide for more information.

Services (V1.0)

The following are services you can instantly install and use by running serverless install --url <service-github-url>

Note: the serverless install command will only work on V1.0 or later.

Features

  • Supports Node.js, Python, Java & Scala.
  • Manages the lifecycle of your serverless architecture (build, deploy, update, delete).
  • Safely deploy functions, events and their required resources together via provider resource managers (e.g., AWS CloudFormation).
  • Functions can be grouped ("serverless services") for easy management of code, resources & processes, across large projects & teams.
  • Minimal configuration and scaffolding.
  • Built-in support for multiple stages.
  • Optimized for CI/CD workflows.
  • Loaded with automation, optimization and best practices.
  • 100% Extensible: Extend or modify the Framework and its operations via Plugins.
  • An ecosystem of serverless services and plugins.
  • A passionate and welcoming community!

Plugins (V1.0)

Use these plugins to extend or overwrite the Framework's functionality...

PluginAuthor
Raml Serverless Serverless plugin to work with RAML API spec documentsandrewcurioso
Serverless Alexa Plugin Serverless plugin to support Alexa Lambda eventsrajington
Serverless Aws Alias This plugin enables use of AWS aliases on Lambda functions.HyperBrain
Serverless Aws Documentation Serverless plugin to add documentation and models to the serverless generated API Gateway9cookies
Serverless Build Plugin A Node.js focused build plugin for serverless.nfour
Serverless Cljs Plugin Enables Clojurescript as an implementation language for Lambda handlersnervous-systems
Serverless Coffeescript A Serverless plugin to compile your CoffeeScript into JavaScript at deploymentduanefields
Serverless Command Line Event Args This module is Serverless Framework plugin. Event JSON passes to your Lambda function in commandline.horike37
Serverless Crypt Securing the secrets on Serverless Framework by AWS KMS encryption.marcy-terui
Serverless Dir Config Plugin EXPERIMENTAL - Serverless plugin to load function and resource definitions from a directory.economysizegeek
Serverless Dotnet A serverless plugin to run 'dotnet' commands as part of the deploy processfruffin
Serverless Dynamodb Local Serverless Dynamodb Local Plugin - Allows to run dynamodb locally for serverless99xt
Serverless Enable Api Logs Enables Coudwatch logging for API Gateway eventspaulSambolin
Serverless Event Constant Inputs Allows you to add constant inputs to events in Serverless 1.0. For more info see constant values in Cloudwatchdittto
Serverless Jest Plugin A Serverless Plugin for the Serverless Framework which adds support for test-driven development using JestSC5
Serverless Mocha Plugin A Serverless Plugin for the Serverless Framework which adds support for test-driven development using MochaSC5
Serverless Offline Emulate AWS λ and API Gateway locally when developing your Serverless projectdherault
Serverless Offline Scheduler Runs scheduled functions offline while integrating with serverless-offlineajmath
Serverless Plugin Aws Alerts A Serverless plugin to easily add CloudWatch alarms to functionsACloudGuru
Serverless Plugin Bind Deployment Id A Serverless plugin to bind the randomly generated deployment resource to your custom resourcesjacob-meacham
Serverless Plugin Browserify Speed up your node based lambda'sdoapp-ryanp
Serverless Plugin Cfauthorizer This plugin allows you to define your own API Gateway Authorizers as the Serverless CloudFormation resources and apply them to HTTP endpoints.SC5
Serverless Plugin Cloudwatch Sumologic Plugin which auto-subscribes a log delivery lambda function to lambda log groups created by serverlessACloudGuru
Serverless Plugin Diff Compares your local AWS CloudFormation templates against deployed ones.nicka
Serverless Plugin Encode Env Var Objects Serverless plugin to encode any environment variable objects.yonomi
Serverless Plugin External Sns Events Add ability for functions to use existing or external SNS topics as an event sourcesilvermine
Serverless Plugin Graphiql A Serverless plugin to run a local http server for graphiql and your graphql handlerbencooling
Serverless Plugin Include Dependencies This is a Serverless plugin that should make your deployed functions smaller.dougmoscrop
Serverless Plugin Lambda Dead Letter A Serverless plugin that can configure a lambda with a dead letter queue or topicgmetzker
Serverless Plugin Multiple Responses Enable multiple content-types for Response templatesilvermine
Serverless Plugin Optimize Bundle with Browserify, transpile with Babel to ES5 and minify with Uglify your Serverless functions.FidelLimited
Serverless Plugin Package Dotenv File A Serverless plugin to copy a .env file into the serverless packageACloudGuru
Serverless Plugin Scripts Add scripting capabilities to the Serverless Frameworkmvila
Serverless Plugin Select Select which functions are to be deployed based on region and stage.FidelLimited
Serverless Plugin Simulate Simulate AWS Lambda and API Gateway locally using Dockergertjvr
Serverless Plugin Stack Outputs Displays stack outputs for your serverless stacks when sls info is ransvdgraaf
Serverless Plugin Stage Variables Add stage variables for Serverless 1.x to ApiGateway, so you can use variables in your Lambda'ssvdgraaf
Serverless Plugin Subscription Filter A serverless plugin to register AWS CloudWatchLogs subscription filtertsub
Serverless Plugin Webpack A serverless plugin to automatically bundle your functions individually with webpackgoldwasserexchange
Serverless Plugin Write Env Vars Write environment variables out to a file that is compatible with dotenvsilvermine
Serverless Prune Plugin Deletes old versions of functions from AWS, preserving recent and aliased versionsclaygregory
Serverless Python Individually A serverless framework plugin to install multiple lambda functions written in pythoncfchou
Serverless Python Requirements Serverless plugin to bundle Python packagesUnitedIncome
Serverless Resources Env After Deploy, this plugin fetches cloudformation resource identifiers and sets them on AWS lambdas, and creates local .-env filerurri
Serverless Run Function Plugin Run serverless function locallylithin
Serverless Scriptable Plugin Customize Serverless behavior without writing a plugin.weixu365
Serverless Step Functions AWS Step Functions with Serverless Framework.horike37
Serverless Subscription Filter Serverless plugin to register subscription filter for Lambda logs. Register and pipe the logs of one lambda to another to process.blackevil245
Serverless Webpack Serverless plugin to bundle your lambdas with Webpackelastic-coders
Serverless Wsgi Serverless plugin to deploy WSGI applications (Flask/Django/Pyramid etc.) and bundle Python packageslogandk

Add a plugin to this list

Example Projects (V1.0)

Project NameAuthor
Serverless Screenshot Serverless Screenshot Service using PhantomJSsvdgraaf
Serverless Postgraphql GraphQL endpoint for PostgreSQL using postgraphqlrentrop
Serverless Messenger Boilerplate Serverless messenger bot boilerplateSC5
Serverless Npm Registry Serverless private npm registry, proxy and cache.craftship
Serverless Pokego Serverless-powered API to fetch nearby Pokemon Go datajch254
Serverless Weekly2pocket App Serverless-powered API for sending posts to pocket apps0enke
Serverless Facebook Quotebot 100% Serverless Facebook messenger chatbot which will respond with inspiring quotespmuens
Serverless Slack Trevorbot Slack bot for info on where in the world is Trevor Gerhardt?conveyal
Serverless Garden Aid IoT Garden Aid Backendgarden-aid
Serverless React Boilerplate A serverless react boilerplate for offline development99xt
Serverless Delivery Framework This is a boilerplate for version release pipeline with serverless framework99xt
Serverless Mailgun Slack A Serverless function for posting to a Slack Webhook in response to a Mailgun routeMarcus-L
Pfs Email Serverless This is a lambda function created by the serverless framework. It searches through members in our mongodb who have not been sent emails and sends them an email with their custom token to unlock the pledge free stream. It then marks those members off as already receiving the email.SCPR
Plaid Cashburndown Service Service for calculating cash burndown with plaid. Frontend code can be found here: https://github.com/cplee/cashburndown-sitecplee
Cordis Serverless A serverless API for EU Cordis datamarzeelabs
Serverless Newsletter Signup Saves user details into DynamoDB table. Required values are email, first_name and last_name.ivanderbu2
Serverless Slack Cron Lambda function which sends messages to Slack channel in regular intervals via cron trigger.ivanderbu2
Giphy Bot giphy-bot for Facebook chattywong
Jwt Lambda Python Minimal proof-of-concept implementation of JWT with Serverless / AWS Lambdamikaelmork
Sls Access Counter Site visitor countertakahashim
Sls Form Mail Send SNS email from form datatakahashim
Serverless Python Sample A simple serverless python sample with REST API endpoints and dependenciesbennybauer
Serverless Msg Gateway A messaging aggregator for kik, skype, twilio, telegram, & messenger. Send and receive messages in a standard format.yonahforst
Serverless Aws Rekognition Finpics Use AWS Rekognition to provide a faces search of finpics.comrgfindl
Serverless Slack Emojibot Serverless slack bot for emojimarkhobson
Keboola Developer Portal Keboola developer portal built with Serverlesskeboola
Serverless Cloudwatch Rds Custom Metrics A NodeJS-based MySQL RDS Data Collection script to push Custom Metrics to Cloudwatch with ServerlessAndrewFarley
Jrestless Examples JRestless (Java / JAX-RS) examples for API Gateway Functions (plain JAX-RS, Spring, binary data requests/responses, custom authorizers and Cognito User Pool authorizers), SNS Functions (asynchronous communication between functions) and Service Functions (synchronous HTTP-like communication between functions - transparent through Feign)bbilger
Sc5 Serverless Boilerplate A boilerplate that contains setup for test-driven developmentSC5
Serverless Blog To Podcast Service that reads RSS feed and converts the entries to a podcast feed and audio files using Amazon PollySC5
Offset Trump Single page app using Serverless (C# runtime) and S3 site hosting. Pledge to do a good thing for the next four years to offset the potential negative effects of the US PresidencyFLGMwt
Serverless Url Shortener A simple url-shortener, using Serverless frameworkaletheia
Serverless Html Pdf Service that convert HTML to PDF using PhantomJS's rasterize example.calvintychan
Serverless Examples Cached Rds Ws A serverless framework example project that uses API Gateway, ElastiCache, and RDS PostgreSQL.mugglmenzel

Contributing

We love our contributors! Please read our Contributing Document to learn how you can start working on the Framework yourself.

Check out our exp/beginner, exp/intermediate or exp/expert labels to find issues we want to move forward on with your help.

Community

Consultants

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


Previous Serverless Version 0.5.x

You can find projects and plugins relating to version 0.5 here. Note that these are not compatible with v1.0 but we are working diligently on updating them. Guide on building v1.0 plugins.

You can read the v0.5.x documentation at readme.io.