{"id":15821,"library":"serverless-dynamodb-client","title":"Serverless DynamoDB Client Plugin","description":"serverless-dynamodb-client is an abandoned Serverless Framework plugin designed to simplify interaction with AWS DynamoDB, providing a consistent API for both local DynamoDB instances and the AWS cloud service. Released as version `0.0.2` and last updated over 7 years ago, it was built specifically for Serverless Framework `0.5.x`. This package provides convenience wrappers for the AWS SDK's `DynamoDB` and `DynamoDB.DocumentClient` classes, automatically configuring them to point to a local DynamoDB instance (specifically on port 8000) when `serverless-dynamodb-local` is active, or to AWS otherwise. Due to its age and reliance on an extremely old version of the Serverless Framework, it is not compatible with modern Serverless setups (v1.x and above) and should not be used in new projects.","status":"abandoned","version":"0.0.2","language":"javascript","source_language":"en","source_url":"https://github.com/99xt/serverless-dynamodb-client","tags":["javascript","serverless framework plugin","serverless applications","serverless plugins","api gateway","lambda","dynamodb","dynamodb client","dynamodb local"],"install":[{"cmd":"npm install serverless-dynamodb-client","lang":"bash","label":"npm"},{"cmd":"yarn add serverless-dynamodb-client","lang":"bash","label":"yarn"},{"cmd":"pnpm add serverless-dynamodb-client","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Required for local development and to integrate with the Serverless offline environment.","package":"serverless-offline","optional":false},{"reason":"Required to provide a local DynamoDB instance, which this plugin configures itself to use.","package":"serverless-dynamodb-local","optional":false}],"imports":[{"note":"Returns an instance of `AWS.DynamoDB` configured for local or remote use based on Serverless environment.","symbol":"dynamodb.raw","correct":"const dynamodb = require('serverless-dynamodb-client');\nconst rawClient = dynamodb.raw;"},{"note":"Returns an instance of `AWS.DynamoDB.DocumentClient` configured for local or remote use based on Serverless environment.","symbol":"dynamodb.doc","correct":"const dynamodb = require('serverless-dynamodb-client');\nconst docClient = dynamodb.doc;"}],"quickstart":{"code":"const dynamodb = require('serverless-dynamodb-client');\nconst rawClient = dynamodb.raw;\n\nmodule.exports.listTables = async (event) => {\n  try {\n    // Ensure that serverless-dynamodb-local is running on port 8000 for local testing\n    const data = await rawClient.listTables().promise();\n    console.log(\"DynamoDB Tables:\", data.TableNames);\n\n    return {\n      statusCode: 200,\n      body: JSON.stringify({\n        message: 'Successfully listed DynamoDB tables (see console)',\n        tables: data.TableNames,\n      }),\n    };\n  } catch (error) {\n    console.error(\"Error listing tables:\", error);\n    return {\n      statusCode: 500,\n      body: JSON.stringify({\n        message: 'Failed to list DynamoDB tables',\n        error: error.message,\n      }),\n    };\n  }\n};","lang":"javascript","description":"This quickstart demonstrates how to use `serverless-dynamodb-client` to obtain the `raw` DynamoDB client and then list existing tables. It highlights the basic CommonJS `require` pattern for this legacy plugin."},"warnings":[{"fix":"Do not use this plugin. Directly integrate the AWS SDK v2 or v3 into your Lambda functions, or explore actively maintained Serverless plugins for DynamoDB integration specific to your Serverless Framework version.","message":"This plugin is designed exclusively for Serverless Framework 0.5.x and is completely incompatible with all modern versions (1.x and above). Attempting to use it with newer Serverless versions will result in critical failures and prevent deployment or local execution.","severity":"breaking","affected_versions":">=0.0.1"},{"fix":"Immediately cease using this package. Implement direct AWS SDK usage for DynamoDB interactions within your Serverless functions, leveraging modern practices and SDK versions.","message":"The `serverless-dynamodb-client` package is effectively abandoned, with its last update occurring over 7 years ago. It has not received updates to support newer Node.js versions, AWS SDK changes, or modern Serverless Framework architecture, making it a severe security and compatibility risk.","severity":"deprecated","affected_versions":">=0.0.1"},{"fix":"Ensure `serverless-dynamodb-local` is correctly installed, configured, and running on port `8000`. If you require a different port, you must manually configure the AWS SDK endpoint in your code instead of relying on this plugin.","message":"For local development, this plugin requires `serverless-dynamodb-local` to be running on its default port `8000`. The plugin does not support custom port configurations, which can lead to connection issues if your local DynamoDB is running on a different port.","severity":"gotcha","affected_versions":">=0.0.1"}],"env_vars":null,"last_verified":"2026-04-21T00:00:00.000Z","next_check":"2026-07-20T00:00:00.000Z","problems":[{"fix":"This plugin is deprecated and abandoned. Migrate to direct AWS SDK usage or a modern, actively maintained DynamoDB plugin compatible with your Serverless Framework version.","cause":"The Serverless Framework version being used (e.g., v1.x, v2.x, v3.x) is incompatible with this ancient plugin's registration method, which was designed for Serverless 0.5.x.","error":"Plugin 'ServerlessDynamodbClient' not found."},{"fix":"Ensure that `serverless-dynamodb-local` is installed and properly configured to start on port `8000` (e.g., via `serverless dynamodb install` and `serverless dynamodb start`) before invoking your Lambda functions locally.","cause":"During local development, the `serverless-dynamodb-local` service is either not running, or it is running on a port other than the default `8000`, which this plugin expects.","error":"connect ECONNREFUSED 127.0.0.1:8000"}],"ecosystem":"npm"}