Skip to main content

CLI tool for creating and publishing AWS Lambda layers for Node.js and Python.

Project description

AWS Lambda Layer CLI Tool

A command-line tool for creating and publishing AWS Lambda layers for Node.js and Python.

Features

  • Create and publish Lambda layers for Node.js (npm) and Python (uv/pip)
  • Automatic version management and smart naming
  • Direct publishing to AWS with IAM credentials and region support
  • Support for multiple packages in a single layer

Installation

Package Managers (Recommended)

npm (Node.js)

npm i -g aws-lambda-layer-cli

uv (Python)

uv tool install aws-lambda-layer-cli

Requirements

  • System: Linux, macOS, or Windows (WSL recommended)
  • Tools: zip, aws-cli (for publishing), node (for Node.js layers), python (for Python layers)

Usage

aws-lambda-layer-cli <command> [options]

Commands

  • zip: Create a local zip file
  • publish: Create and publish a layer to AWS
  • completion: Generate shell completion scripts
  • uninstall: Uninstall the tool
  • help: Show help message

Options

Option Description
--nodejs, -n <pkgs> Create Node.js layer (comma-separated packages)
--python, -p <pkgs> Create Python layer (comma-separated packages)
--name Custom layer name
--description Layer description (publish only)
--profile AWS CLI profile (publish only)
--region AWS region (publish only)
--node-version Node.js version (default: 24)
--python-version Python version (default: 3.14)
--no-uv Use pip/venv instead of uv
-v, --version Show version

Examples

Node.js

# Create local zip with multiple packages
aws-lambda-layer-cli zip --nodejs express@4.18.2,axios --name my-layer

# Publish to AWS with specific profile and region
aws-lambda-layer-cli publish --nodejs lodash --profile prod --region us-east-1 --description "Utils"

Python

# Create local zip with specific python version
aws-lambda-layer-cli zip --python numpy==1.26.0,pandas --python-version 3.12

# Publish to AWS
aws-lambda-layer-cli publish --python requests --name web-layer

Shell Completion

Add to your shell config (~/.bashrc or ~/.zshrc):

# Bash
source <(aws-lambda-layer-cli completion --bash)

# Zsh
source <(aws-lambda-layer-cli completion --zsh)

License

MIT License

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aws_lambda_layer_cli-2.0.4.tar.gz (21.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aws_lambda_layer_cli-2.0.4-py3-none-any.whl (26.5 kB view details)

Uploaded Python 3

File details

Details for the file aws_lambda_layer_cli-2.0.4.tar.gz.

File metadata

  • Download URL: aws_lambda_layer_cli-2.0.4.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for aws_lambda_layer_cli-2.0.4.tar.gz
Algorithm Hash digest
SHA256 80ab087e97ed5d03f6c27a9e508675cafd1f546b27a1fd6e8cf7c53973958f01
MD5 9d5e5c99a8ec24a1dd4de9412edf825f
BLAKE2b-256 14e0b99263a2f850b3e4cc8c205a3af9b4d2473bedf00ed0ed1a1c57aefb4e83

See more details on using hashes here.

File details

Details for the file aws_lambda_layer_cli-2.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for aws_lambda_layer_cli-2.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 245d894d67d8a23b3fae2d0afd57e561ae9f14f4f9e09875f58295fbba4661ab
MD5 b8cad22bac2aa54390eae8310125023d
BLAKE2b-256 6983cef23fe099f5243e17debb1c33a6af788f263d7086d264e191423592e4c4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page