# Source: https://docs.aws.amazon.com/powertools/typescript/latest/upgrade/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/environment-variables/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/kafka/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/validation/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/parser/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/jmespath/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/batch/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/idempotency/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/event-handler/bedrock-agents/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/event-handler/appsync-graphql/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/event-handler/appsync-events/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/event-handler/http/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/metrics/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/logger/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/features/tracer/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/getting-started/lambda-layers/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/getting-started/typescript-settings/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/getting-started/usage-patterns/index.md

# Source: https://docs.aws.amazon.com/powertools/typescript/latest/getting-started/installation/index.md

You can use Powertools for AWS Lambda (TypeScript) by installing it with your favorite dependency management, or via [Lambda Layers](https://docs.aws.amazon.com/powertools/typescript/latest/getting-started/lambda-layers/index.md).

The toolkit is compatible with both TypeScript and JavaScript code bases, and supports both CommonJS and ES modules.

All features are available as individual packages, so you can install only the ones you need, for example:

- **Logger**: `npm i @aws-lambda-powertools/logger`
- **Event Handler**: `npm i @aws-lambda-powertools/event-handler`
- **Metrics**: `npm i @aws-lambda-powertools/metrics`
- **Tracer**: `npm i @aws-lambda-powertools/tracer`

See the [Features](https://docs.aws.amazon.com/powertools/typescript/latest/features/index.md) page for a complete list of available utilities.

## Extra dependencies

Some features use additional dependencies like the AWS SDK for JavaScript v3, which might you need to install separately. Below is a list of utilities that use external dependencies, and the packages you need to install to use them.

||Feature |Install |Default dependency || | -------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | ------------------- | ||**[Tracer](https://docs.aws.amazon.com/powertools/typescript/latest/features/tracer/index.md)** |**`npm i @aws-lambda-powertools/tracer`** |`aws-xray-sdk-core` || ||**[Idempotency](https://docs.aws.amazon.com/powertools/typescript/latest/features/idempotency/index.md)** |**`npm i @aws-lambda-powertools/idempotency @aws-sdk/client-dynamodb @aws-sdk/lib-dynamodb`** | || ||**[Parameters (SSM)](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/index.md)** |**`npm i @aws-lambda-powertools/parameters @aws-sdk/client-ssm`** | || ||**[Parameters (Secrets Manager)](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/index.md)** |**`npm i @aws-lambda-powertools/parameters @aws-sdk/client-secrets-manager`** | || ||**[Parameters (AppConfig)](https://docs.aws.amazon.com/powertools/typescript/latest/features/parameters/index.md)** |**`npm i @aws-lambda-powertools/parameters @aws-sdk/client-appconfigdata`** | || ||**[Parser](https://docs.aws.amazon.com/powertools/typescript/latest/features/parser/index.md)** |**`npm i @aws-lambda-powertools/parser zod`** | || ||**[Validation](https://docs.aws.amazon.com/powertools/typescript/latest/features/validation/index.md)** |**`npm i @aws-lambda-powertools/validation`** |`ajv` || ||**[Kafka (Protocol Buffers)](https://docs.aws.amazon.com/powertools/typescript/latest/features/kafka/index.md)** |**`npm i @aws-lambda-powertools/kafka protobufjs`** | || ||**[Kafka (Avro)](https://docs.aws.amazon.com/powertools/typescript/latest/features/kafka/index.md)** |**`npm i @aws-lambda-powertools/kafka avro-js`** | ||