Skip to content


Cargo Lambda provides several subcommands for different tasks:

The new subcommand creates Rust packages from a well defined template to help you start writing AWS Lambda functions in Rust.

The init subcommand works like the new command but under an existent directory. Files present in that directory will be preserved as they were before running this command.

The build subcommand compiles AWS Lambda functions natively and produces artifacts which you can then upload to AWS Lambda or use with other ecosystem tools, like SAM Cli or the AWS CDK.

The watch subcommand boots a development server that emulates interactions with the AWS Lambda control plane. This subcommand also reloads your Rust code as you work on it.

The invoke subcommand sends requests to the control plane emulator to test and debug interactions with your Lambda functions. This command can also be used to send requests to remote functions once deployed on AWS Lambda.

The deploy subcommand uploads functions to AWS Lambda. You can use the same command to create new functions as well as update existent functions code.

Cargo Lambda does not provide a command to delete the lambda once it is deployed. You can use the aws lambda delete-function --function-name NAME command from the AWS CLI.

Released under the MIT License.