{"_id":"@asn.aeb/dynamodb-local","_rev":"2-d037abeeb15cf994873d9452804bf56b","name":"@asn.aeb/dynamodb-local","dist-tags":{"latest":"0.0.3"},"versions":{"0.0.1":{"name":"@asn.aeb/dynamodb-local","version":"0.0.1","description":"Use DynamoDB locally from Node.js or CLI","engines":{"node":">=14"},"bin":{"dynamodb-local":"bin/dynamodb-local.mjs"},"exports":{".":"./lib/index.js"},"types":"./lib/index.d.ts","scripts":{"build":"tsc","pretest":"npm run build","test":"ts-node-esm -T -O {\\\"module\\\":\\\"ESNext\\\"} --","prepublishOnly":"tsc"},"keywords":["dynamodb","local"],"author":{"name":"asnaeb"},"license":"GPL-3.0-or-later","devDependencies":{"@types/node":"^18.15.3","ts-node":"^10.9.1","typescript":"^5.0.2"},"gitHead":"942830c21316fce5909ea92a66850dd447fe2e00","_id":"@asn.aeb/dynamodb-local@0.0.1","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-uGRaQ5AG7A/ceGV2dVwMhsdARKlwMSsaxJzyLoviZykhHI0ey7d5nRoo3UQcVxzH1veRJL4TMee4fO0ho6/qwA==","shasum":"0dfc6916937da25f785a5696982c468516f5c36a","tarball":"https://registry.npmjs.org/@asn.aeb/dynamodb-local/-/dynamodb-local-0.0.1.tgz","fileCount":9,"unpackedSize":405936,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGh/rbI7dITrLFqowZd5ezAKwbpz36mFul67aiWCt/twIgAbkmMzcAKI+XjJVgyb7jEstZb5Qd1FmJANRG1D0ljZ4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkGKL9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmreqg//bmYAwCIBwDWOiATW22Koi6NR/Kmebq7REogRMBTGjs4DBPik\r\nBCE1sfRFFu/m2Iwg7s8MBP2fbjPQu8oNgGZu9EeKXwA2xpLgOikGczb8J4Iz\r\nnUI/PBHMSH7RpBXBmoG52VjHJw+jcd6ez+zgeOLf6ngnO5z6+r5zuusnTxaz\r\ngonzQELaFbuH/pn0lMGffp8W0B2rVssLeXPutEMCqnoBMlDFL8OD7I5GCrtE\r\nrbQFFYBOM91vZ88xGzplFcbjVK1fiyPBXlVjMz5p55UwXQRG2ugIguRnWtuS\r\n10/oMqg7jlEw+7jyoqmwQvRQaa63Uhayqo77HzrjYhVZSfFVDqEnf7BRjItY\r\nSWW6JoO+aCiaJjz4Zg0bHx+nqqRupg6N4y0FSYzjm/qes42m+3EFC+jt1aT3\r\nvXwUPwqhQbD/ixMZosP5phVqNTLXShfarnGJlE4FT6y2JP6gTgU0yPw52Tcs\r\nUBO3Q7YW1KkwL68wrO5DPuym00BY3Ctla/ZftHTOWeQW5D4VJaE6E5z85ooV\r\nxCj9EDpt1x2I0Jf4pq0uMqnhObxA2ydIUNmmghQKqBPidGajPHb2yY320zhQ\r\nyULy24cWM6gIwtVOeyN4m/3XOX1pks/r19h0JbsGkQAfOCb/gnf6hEcFUvAa\r\n90ifYBO20PeU4bsRYXJ/b1dQMmzjORvDIdc=\r\n=fYg8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"asn.aeb","email":"asnaeb.dev@gmail.com"},"directories":{},"maintainers":[{"name":"asn.aeb","email":"asnaeb.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dynamodb-local_0.0.1_1679336189325_0.8612933995638603"},"_hasShrinkwrap":false},"0.0.2":{"name":"@asn.aeb/dynamodb-local","version":"0.0.2","description":"Use DynamoDB locally from Node.js or CLI","engines":{"node":">=14"},"repository":{"type":"git","url":"git+https://github.com/asnaeb/dynamodb-local.git"},"bin":{"dynamodb-local":"bin/dynamodb-local.mjs"},"exports":{".":"./lib/index.js"},"types":"./lib/index.d.ts","scripts":{"build":"tsc","pretest":"npm run build","test":"ts-node-esm -T -O {\\\"module\\\":\\\"ESNext\\\"} --","prepublishOnly":"tsc"},"keywords":["dynamodb","local"],"author":{"name":"asnaeb"},"license":"GPL-3.0-or-later","devDependencies":{"@types/node":"^18.15.3","ts-node":"^10.9.1","typescript":"^5.0.2"},"gitHead":"31fd6f2a62693b8dec7bed645995472f5bb59c44","bugs":{"url":"https://github.com/asnaeb/dynamodb-local/issues"},"homepage":"https://github.com/asnaeb/dynamodb-local#readme","_id":"@asn.aeb/dynamodb-local@0.0.2","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-YsvyVJt5+tSZltXrzv768lxjLkitKLvlMOPzWHDHLiQXSA5YB+3g7qkOX21yL9gQY5UuRmijlIQQmA61F2zkuw==","shasum":"4aea8de284da88275d32caefe67d0f8b2306448f","tarball":"https://registry.npmjs.org/@asn.aeb/dynamodb-local/-/dynamodb-local-0.0.2.tgz","fileCount":9,"unpackedSize":406038,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrhsz/neHiserK/T0Oa8gUiTYxQ8KiMcQDoOhl9UcguwIhAJYNlGYHGHaFGtVnkC/JchzaYTszgWzwK+haQ0VxrGvT"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkGKPJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo61BAAhCcUXFSTieI4IVxeR9dD9Mck4KhF3lGZJmLVqh11ssETSBfC\r\nfXoOEdz1GxtsAbiWBTfpEA4fvul0u/DXBz4esLm+NAE0BXHg1w5lX884KHj8\r\nyGi+F6kSswg9EBTnnIUA4qm5BFeH1XI/x12z9dz3xpxJoyDeZvtQcUhSL8HG\r\nCcPWSAriR77psS6cMhE0QAwT9eL4j9Kpm2FfcQCS8uHymtRHEEhvb0MlBtzN\r\nbZ3UEKUTrsLQd9zhyai2V3mn6ae2+k2DQbMjgNPR4HstZ4298ljPFgrJzo7H\r\na7aCGMo9cSDGYbNO9iAf0mPVn0GXeAR7Y3zCLd677PS3qLMB3ex1tSAY76JV\r\n9Eh2DnZrzxO3oH8j2Wj9+bxx+penFM/gbDob4suNrhGHnDDBzzlgHJfGVR8Z\r\n4wJNX23+Zkp0Eyah9U08c7pe/d9T+DbP6GtoSqlQYcsvyJ3xmJBPY7Wwbcuc\r\nFlbmeskpA4FQocOktuAAfuA4+P7kKRFOSmcQM+YpwSKv2AxIp93Rqp5DNWIs\r\nfILUpnaD39GVMsILX0KS7mV16WuZS0A0WCKUgtyl27s30AdfOj9uppLmWUqV\r\nDMvNpVG8UmhUcAbhhdTt4Pvbbcv4g+/NOFoqcwM9EAD4DgG8PeIcyqqG0XLX\r\nZ72BaRJkM+EvX6frVhKYm0sXymvC0flc59g=\r\n=lDVd\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"asn.aeb","email":"asnaeb.dev@gmail.com"},"directories":{},"maintainers":[{"name":"asn.aeb","email":"asnaeb.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dynamodb-local_0.0.2_1679336393147_0.372785782871792"},"_hasShrinkwrap":false},"0.0.3":{"name":"@asn.aeb/dynamodb-local","version":"0.0.3","description":"Use DynamoDB locally from Node.js or CLI","engines":{"node":">=14"},"repository":{"type":"git","url":"git+https://github.com/asnaeb/dynamodb-local.git"},"bin":{"dynamodb-local":"bin/dynamodb-local.mjs"},"main":"lib/index.js","exports":{".":"./lib/index.js"},"types":"./lib/index.d.ts","scripts":{"build":"tsc","pretest":"npm run build","test":"ts-node-esm -T -O {\\\"module\\\":\\\"ESNext\\\"} --","prepublishOnly":"tsc"},"keywords":["dynamodb","local"],"author":{"name":"asnaeb"},"license":"GPL-3.0-or-later","devDependencies":{"@types/node":"^18.15.3","ts-node":"^10.9.1","typescript":"^5.0.2"},"gitHead":"ceb39317c27d3210035d73b2f873e4c43c5f51df","bugs":{"url":"https://github.com/asnaeb/dynamodb-local/issues"},"homepage":"https://github.com/asnaeb/dynamodb-local#readme","_id":"@asn.aeb/dynamodb-local@0.0.3","_nodeVersion":"18.12.1","_npmVersion":"8.19.2","dist":{"integrity":"sha512-M8KZaCqBm02ftTCb9pZqCQyShVLcTjjc8FRLXr59sxGPD208Kg+V3wTOvAF2lwiQGp2HVQyjPcOl+7Hrdtd1wg==","shasum":"6f90a0527c9260864bb353dd249997dec4e82b3a","tarball":"https://registry.npmjs.org/@asn.aeb/dynamodb-local/-/dynamodb-local-0.0.3.tgz","fileCount":9,"unpackedSize":58305,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDhvbbkch4s5V5nzKDbw6G4OOUDSJSOzMq2uCYgHdrq9gIgDSYgeU+UciGtflsWA4oPccD6CzIfnP0CnzYIr6AtgHY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkGKVwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr3iRAAiVuyAz0loP+TgJsR9IiyM3gc7YEUL7uEBFY/8ogj242RhYbt\r\n1ViqGBNZbBBgocCTYJ6WGb3yQe9XWskWmdErlGrFCoIplSQaop6u6q9GgAAp\r\nQrSu8wR0Kcf+nO4c7RNxkewZp1MU77DpiJvDUu4qpuUnWnjLI4yZdiboQhiG\r\nxx6Ivph91q8p4wOpEEvdckCdPOwDOPABVk+Xeb3Dtd10NvvMcdbkJsQOQQQ3\r\nlLb+/hVd+EONQshKxuzXX5cTupwb1xiKz+wq2NNuYPFGnpHk4SnPdQzaOIyt\r\n0EnsnS+BULUnAEnMPiiNaj3vUkadLQU3cITQq3F063aaEfn0kUSfSKpLRpA+\r\nF+jl5lwJe521Z7W6bLHk0CBaVA7V2c6NzPpLS87wah1CSSjAaMehKnIbd3gi\r\nqccyxLaifGFS+X0+Eb8zpKdGn/s2f2ELgtEJ4xnB8Q2AAnZ2kXfVUD28pzxq\r\nFKoG0vSl9ez/A9zMVwkkr4pQRKror4+Rs9vwKLy5QbwNpzJ8bLlFKCLrpWls\r\nN65G3VKtM35Lutuz4EbGULMDGtZkqgk4yxxjts2PI5+XY2mxhqkuW5GPyixt\r\nUrjngEwetI0Ttnc73c01AoKpXXbt3L7arw4i33r9TlFwWMDF7v0ODyYL7he0\r\nUMGqXKuO1edr3RAlDrn4ozUOwgahvCxF/dA=\r\n=QTCQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"asn.aeb","email":"asnaeb.dev@gmail.com"},"directories":{},"maintainers":[{"name":"asn.aeb","email":"asnaeb.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dynamodb-local_0.0.3_1679336816341_0.3844763167017058"},"_hasShrinkwrap":false}},"time":{"created":"2023-03-20T18:16:29.228Z","0.0.1":"2023-03-20T18:16:29.539Z","modified":"2023-03-20T18:26:56.724Z","0.0.2":"2023-03-20T18:19:53.384Z","0.0.3":"2023-03-20T18:26:56.577Z"},"maintainers":[{"name":"asn.aeb","email":"asnaeb.dev@gmail.com"}],"description":"Use DynamoDB locally from Node.js or CLI","keywords":["dynamodb","local"],"author":{"name":"asnaeb"},"license":"GPL-3.0-or-later","readme":"# DynamoDBLocal\nInstall and run AWS DynamoDB locally via CLI or Javascript API.\n<img src=\"https://i.imgur.com/QXMjFAi.gif\" width=\"600px\">\n> **NOTE**:\n> To run DynamoDB on your computer, you must have the Java Runtime Environment (JRE) version 8.x or newer installed. The application doesn't run on earlier JRE versions.\n# Installation\n```\nnpm i @asn.aeb/dybamodb-local\n```\nor, to install globally\n```\nnpm i -g @asn.aeb/dybamodb-local\n```\n# CLI\nThe CLI API can be used via `npx dynamodb-local` when installed locally or by just calling `dynamodb-local` from your shell when installed with `-g` \n## `install`\nDownloads and installs dynamodb or, if already installed, prompts to download the latest version and update the current installation.\n```\ndynamodb-local install \n```\n## `uninstall`\nUninstalls dynamodb.\n```\ndynamodb-local uninstall \n```\n\n## `start`\nStarts dynamodb or, if not installed, prompts to install it and, on positive response, will install and then immediately start the service.\n```\ndynamodb-local start\n```\nThe command can take the following arguments:\n#### `--cors`\nAn allow list of specific domains separated by comma. Defaults to *\n```\ndynamodb-local start --cors=my.domain.com,my-other-domain.com\n```\n#### `---dbPath`\nThe directory where DynamoDB writes its database file. Defaults to `{install dir}/DynamoDBLocal_db`. Cannot be used along with `--inMemory`.\n```\ndynamodb-local start --dbPath=path/to/directory\n```\n#### `--delayTransientStatuses`\nCauses DynamoDB to introduce delays for certain operations, simulating the behavior of the DynamoDB web service more closely.\n```\ndynamodb-local start --delayTransientStatuses\n```\n#### `--inMemory`\nDynamoDB runs in memory instead of using a database file. Cannot be used along with `--dbPath`.\n```\ndynamodb-local start --inMemory\n```\n#### `--port`\nThe port number that dynamodb uses. Defaults to 8000\n```\ndynamodb-local start --port=3000\n```\n#### `--sharedDb`\nDynamoDB uses a single database file instead of separate files for each credential and Region.\n```\ndynamodb-local --sharedDb\n```\n\nFor more info about these options, see the [aws documentation](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.UsageNotes.html)\n## The `--path` argument\nAll CLI commands can take the `--path` argument which indicates to run that command relative to a custom path where a dynamodb installation resides. Most of the times you won't need this. When omitted, the default install location will be used: `{package root}/node_modules/@asn.aeb/dynamodb-local/dynamodb`.\n```\ndynamodb-local install --path=path/to/directory\n```\n```\ndynamodb-local uninstall --path=path/to/directory\n```\n```\ndynamodb-local start --path=path/to/directory\n```\n# Javascript \nThe Javascript API can be run from Node >= 14. The package exports a single class called `DynamoDBLocal` and the `DynamoDBOptions` interface for Typescript. \n## `DynamoDBLocal`\nTo use the default install location (recommended), You won't need to instantiate the class, just use its static methods. The methods return promises and may prompt to the console. If the returned promises reject, errors are automatically printed to the console so you don't need to `catch (error) {console.log(error)}`\n```javascript\nimport {DynamoDBLocal} from '@asn.aeb/dynamodb-local'\n\nawait DynamoDBLocal.install()\nawait DynamoDBLocal.start()\nawait DynamoDBLocal.stop()\nawait DynamoDBLocal.uninstall()\n```\nIf you want to use a custom install location, You'll need to instantiate the class, passing your path to the constructor.\n```javascript\nimport {DynamoDBLocal} from '@asn.aeb/dynamodb-local'\n\nconst dynamodbLocal = new DynamoDBLocal('path/to/directory')\nawait dynamodbLocal.install()\nawait dynamodbLocal.start()\nawait dynamodbLocal.stop()\nawait dynamodbLocal.uninstall()\n```\n## `install`\nSame as calling [`dynamodb-local install`](#install). Returns a promise that resolves to `void` when the installation is complete or rejects if there is some error.\n### Example\n```javascript\nimport {DynamoDBLocal} from '@asn.aeb/dynamodb-local'\n\ntry {\n    await DynamoDBLocal.install()\n\n    // OR\n\n    const ddb = new DynamoDBLocal('path/to/dir')\n    await ddb.install()\n}\n\ncatch {}\n```\n## `uninstall`\nSame as calling [`dynamodb-local uninstall`](#uninstall). Returns a promise that resolves to `void` when the uninstallation is complete or rejects if there is some error.\n### Example\n```javascript\nimport {DynamoDBLocal} from '@asn.aeb/dynamodb-local'\n\ntry {\n    await DynamoDBLocal.uninstall()\n\n    // OR\n\n    const ddb = new DynamoDBLocal('path/to/dir')\n    await ddb.uninstall()\n}\n\ncatch {}\n```\n## `start`\nSame as calling [`dynamodb-local start`](#start). Returns a promise that resolves to `void` when dynamodb has started or rejects if there is some error. Optionally, takes an object as the only argument with the following shape:\n```typescript\ninterface DynamoDBOptions {\n    cors?: string[]\n    dbPath?: string\n    delayTransientStatuses?: boolean\n    inMemory?: boolean\n    port?: number\n    sharedDB?: boolean\n} \n```\nFor info about these options, [see above](#start).\n### Example\n```javascript\nimport {DynamoDBLocal} from '@asn.aeb/dynamodb-local'\n\ntry {\n    await DynamoDBLocal.start({inMemory: true, port: 3000})\n\n    // OR\n\n    const ddb = new DynamoDBLocal('path/to/dir')\n    await ddb.start({cors: ['my.domain.com', 'my-other-domain.com']})\n}\n\ncatch {}\n```\n## `stop`\nTerminate the dynamodb process if it is still executing. You don't need to call this before exiting the main Node.js process, it will automatically terminate. If multiple dynamodb processes are running, only the one associated with the instance on which `stop` is called will be terminated. \n### Example\n```javascript\nimport {DynamoDBLocal} from '@asn.aeb/dynamodb-local'\n\ntry {\n    await DynamoDBLocal.start()\n    // ..do your stuff\n    await DynamoDBLocal.stop()\n\n    // OR\n\n    const ddb_0 = new DynamoDBLocal('path/to/dir')\n    const ddb_1 = new DynamoDBLocal('path/to/another/dir')\n    \n    await ddb_0.start({port: 3000})\n    await ddb_1.start({port: 3001})\n    // ..do your stuff\n    await ddb_0.stop()\n    // ddb_1 is still running\n    await ddb_1.stop()\n    // ddb_1 is stopped as well\n}\n\ncatch {}\n```\n","readmeFilename":"README.md","homepage":"https://github.com/asnaeb/dynamodb-local#readme","repository":{"type":"git","url":"git+https://github.com/asnaeb/dynamodb-local.git"},"bugs":{"url":"https://github.com/asnaeb/dynamodb-local/issues"}}