Deploy high-level components such as static websites, buckets, queues, webhooks...
Deploy high-level components such as static websites, buckets, queues, webhooks...
Lift is a plugin that leverages the AWS CDK to expand the Serverless Framework beyond functions.
Deploy production-ready websites, queues, storage buckets and more with a few lines in serverless.yml.
Lift is a Serverless Framework plugin, install it in your project:
serverless plugin install -n serverless-lift
If you prefer, you can install via npm
directly: npm install --save-dev serverless-lift
.
Once installed, start using Lift constructs in serverless.yml
:
service: my-app
provider:
name: aws
plugins:
- serverless-lift
functions:
# ...
constructs:
# Include Lift constructs here
landing-page:
type: static-website
path: 'landing/dist'
avatars:
type: storage
The AWS CDK is extremely powerful, but it is very complex and cannot be used in serverless.yml
. Lift changes that: use the best of the CDK in Serverless, without having to learn about it!
Lift provides components, aka "constructs", specifically selected for serverless applications. They are all built using the CDK and its best practices, with unique features to provide an awesome developer experience.
Deploy static websites and single-page applications, for example React, VueJS or Angular apps.
constructs:
landing:
type: static-website
path: dist
Deploy preconfigured S3 buckets to store files.
constructs:
avatars:
type: storage
Deploy SQS queues and workers for asynchronous processing.
constructs:
my-queue:
type: queue
worker:
handler: src/report-generator.handler
Deploy webhooks to receive notifications from 3rd party applications.
constructs:
stripe-webhook:
type: webhook
path: /my-webhook-endpoint
authorizer:
handler: myAuthorizer.main
More constructs are coming soon! Got suggestions? Open and upvote drafts.
You can eject from Lift at any time: Lift is based on CloudFormation. That allows anyone to kickstart a project with Lift, and fallback to CloudFormation if you ever grow out of it.
To eject:
serverless lift eject
resources
section of serverless.ymlserverless.yml
the Lift constructs you have turned into CloudFormationLift is built and maintained with love ❤️ by