{"id":13528317,"url":"https://github.com/shiftcode/dynamo-easy","last_synced_at":"2025-05-15T11:04:49.135Z","repository":{"id":25701673,"uuid":"99894900","full_name":"shiftcode/dynamo-easy","owner":"shiftcode","description":"DynamoDB client for NodeJS and browser with a fluent api to build requests. We take care of the type mapping between JS and DynamoDB, customizable trough typescript decorators.","archived":false,"fork":false,"pushed_at":"2025-03-04T16:07:31.000Z","size":3815,"stargazers_count":208,"open_issues_count":46,"forks_count":28,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-04T02:25:26.800Z","etag":null,"topics":["aws","dynamo","dynamodb","dynamodb-client","expression-builder","expressions","fluent-api","objectmapper","odm","orm","serverless","typescript","typescript-decorators"],"latest_commit_sha":null,"homepage":"https://shiftcode.github.io/dynamo-easy/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/shiftcode.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-10T07:32:47.000Z","updated_at":"2025-03-08T21:00:44.000Z","dependencies_parsed_at":"2024-04-19T20:41:41.547Z","dependency_job_id":"070022f8-707a-452f-9647-8c6b01f1eef6","html_url":"https://github.com/shiftcode/dynamo-easy","commit_stats":{"total_commits":459,"total_committers":11,"mean_commits":41.72727272727273,"dds":0.4466230936819172,"last_synced_commit":"1ff9814c775524dba6f1c5b324b5c249da2d1d20"},"previous_names":["shiftcode/sc-dynamo-object-mapper"],"tags_count":104,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shiftcode%2Fdynamo-easy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shiftcode%2Fdynamo-easy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shiftcode%2Fdynamo-easy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/shiftcode%2Fdynamo-easy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/shiftcode","download_url":"https://codeload.github.com/shiftcode/dynamo-easy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248441883,"owners_count":21104094,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","dynamo","dynamodb","dynamodb-client","expression-builder","expressions","fluent-api","objectmapper","odm","orm","serverless","typescript","typescript-decorators"],"created_at":"2024-08-01T06:02:25.394Z","updated_at":"2025-04-11T16:38:54.670Z","avatar_url":"https://github.com/shiftcode.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"# Dynamo-Easy\n[![Travis](https://img.shields.io/travis/com/shiftcode/dynamo-easy.svg)](https://travis-ci.com/shiftcode/dynamo-easy)\n[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)\n[![latest-release](https://img.shields.io/npm/v/@shiftcoders/dynamo-easy/latest.svg)]()\n[![Coverage Status](https://coveralls.io/repos/github/shiftcode/dynamo-easy/badge.svg?branch=master)](https://coveralls.io/github/shiftcode/dynamo-easy?branch=master)\n[![styled with prettier](https://img.shields.io/badge/styled_with-prettier-ff69b4.svg)](https://github.com/prettier/prettier)\n[![All Contributors](https://img.shields.io/badge/all_contributors-3-orange.svg?style=flat-square)](#contributors)\n\n\nA DynamoDB client which provides an easy to use fluent api to execute requests. It supports TypeScript decorators to define the necessary metadata for your models. You don't need to care about the mapping of JavaScript types to their DynamoDB types any more. We've got you covered.\n\nBuilt with :heart: by [shiftcode](https://www.shiftcode.ch).\n\n## Show me some code\n```typescript\nimport { Model, PartitionKey, DynamoStore } from '@shiftcoders/dynamo-easy'\n\n@Model()\nexport class Person {\n  @PartitionKey()\n  id: string\n  name: string\n  yearOfBirth: number\n}\n\nconst personStore = new DynamoStore(Person)\n\npersonStore\n  .scan()\n  .whereAttribute('yearOfBirth').equals(1958)\n  .exec()\n  .then(res =\u003e console.log('ALL items with yearOfBirth == 1958', res))\n\n```\n\n## Resources\n- 🤓 Learn more visiting the [docs](https://shiftcode.gitbook.io/dynamo-easy)\n- 📖 Checkout the technical API documentation [api docs](https://shiftcode.github.io/dynamo-easy/)\n- 🚀 Check the running sample on [StackBlitz](https://stackblitz.com/edit/dynamo-easy-node-sample)\n  - [demo git repository](https://github.com/shiftcode/dynamo-easy-demo)\n\n## Credits\n- [typescript-library-starter](https://github.com/alexjoverm/typescript-library-starter) - Starter project which helps creating a TypeScript library project\n- [vogels](https://github.com/ryanfitz/vogels) - To get an idea on how to build the fluent api\n- [typestore](http://densebrain.github.io/typestore/) - Inspiration on how to implement the model decorators\n\n## Contributors\nMade with :heart: by [@michaelwittwer](https://github.com/michaelwittwer) and all these wonderful contributors ([emoji key](https://github.com/kentcdodds/all-contributors#emoji-key)):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore --\u003e\n\u003ctable\u003e\u003ctr\u003e\u003ctd align=\"center\"\u003e\u003ca href=\"https://www.shiftcode.ch\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/8394182?v=4\" width=\"100px;\" alt=\"Michael Wittwer\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMichael Wittwer\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-michaelwittwer\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/shiftcode/dynamo-easy/commits?author=michaelwittwer\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/shiftcode/dynamo-easy/commits?author=michaelwittwer\" title=\"Tests\"\u003e⚠️\u003c/a\u003e \u003ca href=\"https://github.com/shiftcode/dynamo-easy/commits?author=michaelwittwer\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/simonmumenthaler\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/37636934?v=4\" width=\"100px;\" alt=\"Simon Mumenthaler\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eSimon Mumenthaler\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-simonmumenthaler\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/shiftcode/dynamo-easy/commits?author=simonmumenthaler\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/shiftcode/dynamo-easy/commits?author=simonmumenthaler\" title=\"Tests\"\u003e⚠️\u003c/a\u003e \u003ca href=\"https://github.com/shiftcode/dynamo-easy/commits?author=simonmumenthaler\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/michaellieberherrr\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/8321523?v=4\" width=\"100px;\" alt=\"Michael Lieberherr\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMichael Lieberherr\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/shiftcode/dynamo-easy/commits?author=michaellieberherrr\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/shiftcode/dynamo-easy/commits?author=michaellieberherrr\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/shiftcode/dynamo-easy/commits?author=michaellieberherrr\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/kentcdodds/all-contributors) specification. Contributions of any kind welcome!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshiftcode%2Fdynamo-easy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fshiftcode%2Fdynamo-easy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fshiftcode%2Fdynamo-easy/lists"}