A list of AWS lambdas and lambda-related resources. Hopefully some are even useful.
Please note that there are no guarantees that the functions here are safe to run - you're going to have to test them yourself.
This list is under the Apache 2.0 license.
Apex lets you use languages that are not natively supported by AWS Lambda, such as Golang, through the use of a Node.js shim injected into the build. A variety of workflow related tooling is provided for testing functions, rolling back deploys, viewing metrics, tailing logs, hooking into the build system and more.
An HTTP/TCP Distributed Computing Framework in Python using Amazon Lambda functions.
This is a working prototype, still under development. Not suitable for anything other than exploring, making suggestions/issues.
Chalice is Amazon's python serverless microframework for AWS. It allows you to quickly create and deploy applications that use Amazon API Gateway and AWS Lambda.
Another Javascript serverless framework for AWS Lambda and API Gateway.
A serverless web framework for Node.js on AWS (CloudFormation, CloudFront, API Gateway, Lambda). More details at https://dawson.sh.
Hexaville is a serverless framework for Swift using AWS Lambda + ApiGateway etc as a back end. Build applications in Swift comprised of microservices that run in response to events, automatically scale to meet demand, and only be charged for time actually spent running.
A Java serverless microframework for RESTful API that allows you to quickly develop applications that use Amazon API Gateway and AWS Lambda.
A toolkit for developing and deploying serverless Python code in AWS Lambda. The Python-Lambda library takes away the guess work of developing your Python-Lambda services by providing you a toolset to streamline the annoying parts.
Python routing mini-framework for AWS Lambda with optional JSON-schema validation.
Features:
- lambda_handler function constructor with built-in dispatcher
- Decorator to register functions to handle HTTP methods
- Optional JSON-schema input validation using same decorator
Pyverless is a mini-framework with a bunch of utilities that aims to help you create APIs using AWS Lambdas fast and in a consistent way. Pyverless provides the following:
- Authentication handling
- Class-Based Handlers
- Configuration
- Exceptions
- JWT and cryptography
- Serializers
- Warmup handling
Rumbda does everything necessary to build a zip file for running ruby inside of an AWS Lambda. This includes downloading traveling ruby, creating a bundle of the project's Gemfile dependencies, and creating a consumable .zip file for use with Lambda.
Build web, mobile and IoT applications with serverless architectures using AWS Lambda, Azure Functions, Google CloudFunctions & more! Here is a list of Serverless Examples.
AWS Lambda Go functions using Serverless Framework and a Python shim.
A Go framework for transforming a Go application into an AWS Lambda powered microservice. Supports multiple event sources, compile-time IAM policies, and automatic packaging and marshaling to CloudFormation.
Up focuses on deploying "vanilla" HTTP servers so there's nothing new to learn, just develop with your favorite existing frameworks such as Express, Koa, Django, Golang net/http or others.
Up currently supports Node.js, Golang, Python, Java, Crystal, and static sites out of the box. Up is platform-agnostic, supporting AWS Lambda and API Gateway as the first targets. You can think of Up as self-hosted Heroku style user experience for a fraction of the price, with the security, flexibility, and scalability of AWS.
A serverless Javascript Development Framework with AWS Lambda and Docker deployment options.
Zappa makes it super easy to build and deploy server-less, event-driven Python applications (including, but not limited to, WSGI web apps) on AWS Lambda + API Gateway.
This section is for both single functions and applications composed of multiple interconnected AWS lambda functions.
- aws-key-disabler - Lambda Function that disables AWS IAM User Access Keys after a set amount of time in order to reduce the risk associated with old access keys.
- aws-lambda-blog-platform - A complete blogging solution that uses the following Amazon Web Services for operation - API Gateway, Lambda, DynamoDB, S3, Cloudfront, SES.
- aws-maintenance-lambda - Send alerts (to Slack, HipChat) on AWS maintenance events.
- aws-monitor - Run periodically as an AWS Lambda, will detect your instances, add CloudWatch alerting for each, and create CloudWatch dashboards based on your preferences.
- aws-ses-to-elasticsearch - SES is capable of sending reports about email delivery (deliveries, bounces, rejects) to SNS. However, there's no built in way to pipe these reports into something like Elastic Search. This Lambda function bridges the gap and allows to send the reports to ES.
- binaryalert - Serverless, Real-time & Retroactive Malware Detection.
- BucketSnake - Provisions S3 access for IAM roles. A primary feature of Bucket Snake is to crete IAM roles that reside in the account where the S3 buckets live to facilitate proper cross-account S3 bucket access (via a role assumption).
- chalice-transmogrify - Python Microservice that transforms arbitrary XML/RSS to JSON.
- chaos-lambda - A Serverless implementation of Netflix's Chaos Monkey for AWS (runs on AWS Lambda).
- chef-node-cleanup - Automatically Delete Terminated Instances in Chef Server with AWS Lambda when triggered by CloudWatch instance termination events.
- chromeless - Chrome automation made simple. Runs locally or headless on AWS Lambda. See https://chromeless.netlify.com for more details.
- cloudwatch-logs-shipper-logzio-lambda - Ships Cloudwatch Logs to logz.io.
- cwlogs2sns - AWS CloudWatch to SNS handler for AWS Lambda.
- ddns-function - Dynamically create Route 53 resource records using CloudWatch Events and AWS Lambda.
- ebs_snapper - Allows you to schedule regular EBS snapshots and clean up EBS snapshots on EC2, as well as replicate snapshots to a secondary EC2 region.
- ecs-host-service-scale - Lambda function to ensure an ECS Service is set to the correct Desired Count for a One-Task-Per-Host placement value for any cluster that runs the Service.
- felix - Automate the rotation of IAM keys used by third-party services. Felix is aimed at making it easy to manage IAM keys in third-party services like SumoLogic and GitLab. It aims to be easily extensible by both built-in providers and external plugins.
- github-s3-deploy - AWS Lambda function, triggered by Github/SNS webhook, to sync new commits in an S3 bucket.
- honeyλ - A simple, serverless application designed to create and monitor fake HTTP endpoints (i.e. URL honeytokens) automatically, on top of AWS Lambda and Amazon API Gateway.
- houdini - Houdini runs on AWS Lambda and executes commands on remote hosts over SSH using Paramiko. The host address, username, command, and private key name are provided by the consumer in the Lambda event, the command is executed, and the contents of stdin, stdout, and stderr are returned. The actual content of the private key used for establishing the SSH connection is encrypted with an AWS KMS key and stored in AWS SSM Parameter Store.
- hugo-lambda - Use AWS Lambda to run the Hugo static site generator.
- invokust - A tool for running Locust load tests from within Python without the need to use the locust command line to allow running load tests in python or on AWS Lambda.
- lambda-comments - Blog commenting system built with AWS Lambda, API Gateway, S3, DynamoDB streams, IAM and CloudWatch Logs.
- lambda-keystore - Simple key-value store with TTL for AWS Lambda using DynamoDB.
- lambda-packs - Precompiled packages for Lambda.
- lambdaproxy - Lambda powered HTTP/SOCKS web proxy.
- LambdAuth - Sample authentication service implemented with a server-less architecture, using AWS Lambda to host and execute the code and Amazon DynamoDB as persistent storage. This provides a cost-efficient solution that is scalable and highly available and can be used with Amazon Cognito for Developer Authenticated Identities.
- letsencrypt - Use AWS Lambda to manage SSL certificates for any site that uses Amazon's CloudFront CDN.
- MoonMail - Sends email marketing campaigns with Amazon SES.
- node-letsencrypt-lambda - Use AWS Lambda to manage SSL certificates for Lets-Encrypt.
- perf-cop - Profiles your site with PWMetrics and publishes the results as CloudWatch metrics.
- pricing-tools - A Lambda function that calculates near real-time price of an account's infrastructure including EC2, ELB, EBS, RDS, Lambda, Dynamo DB and Kinesis resources.
- reaper-lambda - Reaps any and all instances which are not tagged with an expiration date.
- s3-file-copier - Lambda function that copies files from source S3 bucket to target bucket upon upload.
- send-ses-email - Send emails using Amazon SES. The primary purpose of this function is to provide a server-side back-end for sending emails from static websites.
- serverless-backup - A simple AWS Boto3 script to trigger EBS Snapshots using Lambda Functions.
- serverless-ephemeral - Serverless Ephemeral (or Serephem) is a Serverless Framework plugin that helps bundle any stateless library into a Lambda deployment artifact.
- serverless-plugin-healthcheck - Creates one schedule event lambda that invokes all the service lambdas you select in a configured time interval (default: 5 minutes) or a specific time, forcing your containers to report their status. In adition, it creates a new endpoint (named __health by default) which can be called to provide a json summary of the current status of each healthcheck.
- serverless-plugin-stackstorm - Plugin for serverless framework to run ready to use actions from StackStorm Exchange as AWS Lambda functions.
- serverless-s3-processing - Uses the Serverless Framework and AWS Lambda to process objects and events from S3.
- serverless-secrets - Sample serverless AWS Lambda application that leverages the AWS SSM parameter store for managing secrets.
- serverless-url-shortener - URL shortener for AWS Lambda and S3.
- SES Email Forwarder - Node.js script for AWS Lambda that uses the inbound/outbound capabilities of AWS Simple Email Service (SES) to run a "serverless" email forwarding service. Instead of setting up an email server on an EC2 instance to handle email redirects, use SES to receive email, and the included Lambda script to process it and send it on to the chosen destination.
- ses-forwarder - A Python 2.7 Email forwarder script for AWS Lambda, which uses the AWS SES and S3 services.
- Shelvery - Shelvery is a tool for creating backups in Amazon cloud (AWS). It currently supports RDS and EBS backups, and AMI support is scheduled to be released soon.
- sns2slack - AWS SNS to slack notifications handler for AWS Lambda.
- StreamAlert - StreamAlert is a serverless, realtime data analysis framework which empowers you to ingest, analyze, and alert on data from any environment, using datasources and alerting logic you define.
- sumologic-aws-lambda-unzip - Java Lambda function that can uncompress a zip file, read the files inside and send them to Sumo Logic.
- werdino-lambda - AWS Lambda function for the Werdino webhook.
- aws-lambda-cheatsheet - A cheatsheet for AWS Lambda (focuses on Python)
- AWS IOT Button Example - This is an Internet Button reference project: when a button on the device is pressed, a cloud backend gets a notification and performs an action. In this particular case, AWS Lambda function sends an email to the specific email address.
- Lambda Tutorial: Lambda + Serverless = HAPPY
- Learning Lambda - Mike Roberts' series on learning to use Lambda
- Nightmare-lambda-tutorial - A sample project and tutorial to show how to run NightmareJS on AWS Lambda.
- AWS IOT Button Example - This is an Internet Button reference project: when a button on the device is pressed, a cloud backend gets a notification and performs an action. In this particular case, AWS Lambda function sends an email to the specific email address.
- api-gateway-sim - API Gateway simulator for Node JS Lambda that allows you to test your Lambda function locally.
- aws-lambda-dotnet - Libraries, samples and tools to help .NET Core developers develop AWS Lambda functions.
- aws-lambda-runner - An AWS Lambda Java simulator that allows running and debugging Lambda functions authored in Java locally.
- aws-sam-local -
samis the AWS CLI tool for managing Serverless applications written with AWS Serverless Application Model (SAM). SAM Local can be used to test functions locally, start a local API Gateway from a SAM template, validate a SAM template, and generate sample payloads for various event sources. - claudia - Claudia makes it easy to deploy Node.js projects to AWS Lambda and API Gateway. It automates all the error-prone deployment and configuration tasks, and sets everything up the way JavaScript developers expect out of the box. This means that you can get started with Lambda and API Gateway easily, and focus on solving important business problems instead of dealing with AWS deployment workflows.
- cljs-lambda - Utilities around deploying Clojurescript functions to AWS Lambda.
- dd-aws-lambda-functions - Repository of lambda functions that process aws log streams and send data to datadog
- docker-lambda-python36-rust - Docker image that builds Rust applications serverless for AWS Lambda.
- docker-lambda - Docker images and test runners that replicate the live AWS Lambda environment
- formplug-serverless - A form forwarding service for AWS Lambda that you can use to accept form submissions by email without server-side code.
- goad - An AWS Lambda powered, highly distributed, load testing tool built in Go.
- iopipe-python - This package provides analytics and distributed tracing for event-driven applications running on AWS Lambda.
- iron-io/lambda - A set of tools, tests and libraries to convert Amazon AWS Lambda functions into Docker images that can run on any computer or cloud provider.
- jiffy-route-builder - A tiny module (<5KB) to create lightweight API handlers using Node.js with AWS Lambda and API Gateway. Uses another tiny (<2KB) library called route-recognizer to match URLs against routing patterns, and forwards requests to handler functions. Written in TypeScript so you have type information available - especially useful to figure out what's available in the request that API Gateway sends to your handler.
- lambda-packager - Uses the amazonlinux Docker image to build Python packages for AWS Lambda.
- lambda-packages - Various popular python libraries, pre-compiled to be compatible with AWS Lambda. The best way to use these packages is with Zappa, which will automatically install the right packages during deployment, and do a million other useful things https://blog.zappa.io.
- lambda-tdd - A testing framework for AWS Lambda functions. Useful for integration testing as you can examine how your lambda function executes for certain input and specific environment variables. Tries to model the cloud execution as closely as possible
- lambda-tester - Helper for unit testing AWS Lambda functions using Node.js
- lambda_utils - Python helper decorator for handling different AWS Event types for AWS Lambda.
- lambdaSH - Run shell commands inside AWS Lambda environment
- lambdaskill - A simple Python 3 toolkit to build Alexa Skills using AWS Lambda.
- lambdaWrap - Ruby gem to simplify deployment of AWS Lambda based web services.
- python-vendor - Provides an AWS service API for building compiled Python packages, ready for use in your own AWS Lambda functions.
- simple-lambda-mailer - A simple mailer that you can use in a web blog and call via an API.
- simple-lambda-router - A small router utility for lambda functions handling HTTP events from multiple resources and methods.
- webpack-aws-lambda-upload-plugin - Zip and upload your AWS Lambda function directly from webpack.