{"id":13880778,"url":"https://github.com/awslabs/aws-ddk","last_synced_at":"2026-01-14T07:31:59.688Z","repository":{"id":37533834,"uuid":"460169290","full_name":"awslabs/aws-ddk","owner":"awslabs","description":"An open source development framework to help you build data workflows and modern data architecture on AWS.","archived":false,"fork":false,"pushed_at":"2025-04-22T04:10:04.000Z","size":5900,"stargazers_count":271,"open_issues_count":17,"forks_count":23,"subscribers_count":12,"default_branch":"main","last_synced_at":"2026-01-02T13:35:14.425Z","etag":null,"topics":["aws","dataengineering","dataops","python"],"latest_commit_sha":null,"homepage":"https://awslabs.github.io/aws-ddk/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/awslabs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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,"zenodo":null}},"created_at":"2022-02-16T20:36:49.000Z","updated_at":"2025-11-03T03:54:20.000Z","dependencies_parsed_at":"2024-03-11T15:43:41.008Z","dependency_job_id":"f757222e-68f0-4f34-b052-27e004025f28","html_url":"https://github.com/awslabs/aws-ddk","commit_stats":{"total_commits":199,"total_committers":12,"mean_commits":"16.583333333333332","dds":"0.42211055276381915","last_synced_commit":"35ceae099aa7b0adbbe869a23c515321a0dc5b0c"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":"amazon-archives/__template_Apache-2.0","purl":"pkg:github/awslabs/aws-ddk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awslabs%2Faws-ddk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awslabs%2Faws-ddk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awslabs%2Faws-ddk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awslabs%2Faws-ddk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/awslabs","download_url":"https://codeload.github.com/awslabs/aws-ddk/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/awslabs%2Faws-ddk/sbom","scorecard":{"id":219552,"data":{"date":"2025-08-11","repo":{"name":"github.com/awslabs/aws-ddk","commit":"deabd3b4b64c389373e80f49cb2e31534d6725bd"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.1,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":0,"reason":"Found 1/24 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v1.3.1 not signed: https://api.github.com/repos/awslabs/aws-ddk/releases/129266689","Warn: release artifact v1.3.0 not signed: https://api.github.com/repos/awslabs/aws-ddk/releases/124878133","Warn: release artifact v1.3.1 does not have provenance: https://api.github.com/repos/awslabs/aws-ddk/releases/129266689","Warn: release artifact v1.3.0 does not have provenance: https://api.github.com/repos/awslabs/aws-ddk/releases/124878133"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/build.yml:127","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/build.yml:11","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/build.yml:62","Info: jobLevel 'contents' permission set to 'read': .github/workflows/build.yml:93","Info: jobLevel 'contents' permission set to 'read': .github/workflows/upgrade-main.yml:13","Info: jobLevel 'contents' permission set to 'read': .github/workflows/upgrade-main.yml:47","Warn: no topLevel permission defined: .github/workflows/build.yml:1","Warn: no topLevel permission defined: .github/workflows/docs-release.yml:1","Warn: no topLevel permission defined: .github/workflows/pages.yml:1","Warn: no topLevel permission defined: .github/workflows/pull-request-lint.yml:1","Warn: no topLevel permission defined: .github/workflows/upgrade-main.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: github.com/awslabs/.github/SECURITY.md:1","Info: Found linked content: github.com/awslabs/.github/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: github.com/awslabs/.github/SECURITY.md:1","Info: Found text in security policy: github.com/awslabs/.github/SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 23 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:38: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:66: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:72: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:96: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:100: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:108: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:130: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:133: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:137: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:145: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/build.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs-release.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/docs-release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs-release.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/docs-release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pages.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/pages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pages.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/pages.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pages.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/pages.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pull-request-lint.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/pull-request-lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/upgrade-main.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/upgrade-main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/upgrade-main.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/upgrade-main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/upgrade-main.yml:37: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/upgrade-main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/upgrade-main.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/upgrade-main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/upgrade-main.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/upgrade-main.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/upgrade-main.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/awslabs/aws-ddk/upgrade-main.yml/main?enable=pin","Info:   0 out of  21 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   4 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":0,"reason":"11 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-353f-x4gh-cqq8","Warn: Project is vulnerable to: GHSA-5w6v-399v-w3cc","Warn: Project is vulnerable to: GHSA-mrxw-mxhj-p664","Warn: Project is vulnerable to: GHSA-vvfq-8hwr-qm4m","Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-xffm-g5w8-qvg7","Warn: Project is vulnerable to: GHSA-qq4x-c6h6-rfxh","Warn: Project is vulnerable to: GHSA-5pq3-h73f-66hr","Warn: Project is vulnerable to: GHSA-qc59-cxj2-c2w4","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-fjxv-7rqg-78g4"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-17T02:13:03.420Z","repository_id":37533834,"created_at":"2025-08-17T02:13:03.421Z","updated_at":"2025-08-17T02:13:03.421Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28413374,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T05:26:33.345Z","status":"ssl_error","status_checked_at":"2026-01-14T05:21:57.251Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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","dataengineering","dataops","python"],"created_at":"2024-08-06T08:03:28.420Z","updated_at":"2026-01-14T07:31:59.667Z","avatar_url":"https://github.com/awslabs.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","Building"],"sub_categories":["Workflows"],"readme":"# AWS DataOps Development Kit (DDK)\n![Actions Status](https://github.com/awslabs/aws-ddk/actions/workflows/build.yml/badge.svg)\n[![npm version](https://badge.fury.io/js/aws-ddk-core.svg)](https://badge.fury.io/js/aws-ddk-core)\n[![PyPi version](https://badge.fury.io/py/aws-ddk-core.svg)](https://badge.fury.io/py/aws-ddk-core)\n![NPM Downloads](https://img.shields.io/npm/dt/aws-ddk-core?label=npm%20downloads\u0026color=blue)\n[![PyPi Downloads](https://static.pepy.tech/personalized-badge/aws-ddk-core?period=total\u0026units=international_system\u0026left_text=pypi%20downloads\u0026left_color=gray\u0026right_color=blue)](https://pepy.tech/project/aws-ddk-core)\n\n##### Packages 🗳️ \n- [NPM](https://www.npmjs.com/package/aws-ddk-core/)\n- [Pypi](https://pypi.org/project/aws-ddk-core/)\n\n---\n\nThe AWS DataOps Development Kit is an open source development framework for customers that build data workflows and modern data architecture on AWS.\n\nBased on the [AWS CDK](https://github.com/aws/aws-cdk), it offers high-level abstractions allowing you to build pipelines that manage data flows on AWS, driven by DevOps best practices.  The framework is extensible, you can add abstractions for your own data processing infrastructure or replace our best practices with your own standards. It's easy to share templates, so everyone in your organisation can concentrate on the business logic of dealing with their data, rather than boilerplate logic.\n\n---\n\nThe **DDK Core** is a library of CDK constructs that you can use to build data workflows and modern data architecture on AWS, following our best practice. The DDK Core is modular and extensible, if our best practice doesn't work for you, then you can update and share your own version with the rest of your organisation by leveraging a private **AWS Code Artifact** repository.\n\nYou can compose constructs from the DDK Core into a **DDK App**.  Your DDK App can also add contain constructs from the CDK Framework or the [AWS Construct Library](https://docs.aws.amazon.com/cdk/api/latest/docs/aws-construct-library.html).\n\n## Overview\n\nFor a detailed walk-through, check out our [Workshop](https://catalog.us-east-1.prod.workshops.aws/workshops/3644b48b-1d7c-43ef-a353-6edcd96385af/en-US) or\ntake a look at [examples](https://github.com/aws-samples/aws-ddk-examples).\n\n### Build Data Pipelines\n\nOne of the core features of DDK is ability to create Data Pipelines. A DDK [DataPipeline](https://awslabs.github.io/aws-ddk/release/stable/api/core/stubs/aws_ddk_core.pipelines.DataPipeline.html) \nis a chained series of stages. It automatically “wires” the stages together using \n[AWS EventBridge Rules](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-rules.html) .\n\nDDK comes with a library of stages, however users can also create their own based on their use cases, \nand are encouraged to share them with the community. \n\nLet's take a look at an example below:\n\n```python\n...\n\nfirehose_s3_stage = FirehoseToS3Stage(\n    self,\n    \"ddk-firehose-s3\",\n    bucket=ddk_bucket,\n    data_output_prefix=\"raw/\",\n)\nsqs_lambda_stage = SqsToLambdaStage(\n    scope=self,\n    id=\"ddk-sqs-lambda\",\n    code=Code.from_asset(\"./lambda\"),\n    handler=\"index.lambda_handler\",\n    layers=[\n        LayerVersion.from_layer_version_arn(\n            self,\n            \"ddk-lambda-layer-wrangler\",\n            f\"arn:aws:lambda:{self.region}:336392948345:layer:AWSSDKPandas-Python39:1\",\n        )\n    ]\n)\n\n(\n    DataPipeline(scope=self, id=\"ddk-pipeline\")\n    .add_stage(firehose_s3_stage)\n    .add_stage(sqs_lambda_stage)\n)\n...\n```\n\nFirst, we import the required resources from the aws_ddk_core library, including the two stage constructs: \n[FirehoseToS3Stage()](https://constructs.dev/packages/aws-ddk-core/v/1.0.1/api/FirehoseToS3Stage) and \n[SqsToLambdaStage()](https://constructs.dev/packages/aws-ddk-core/v/1.0.1/api/SqsToLambdaStage). \nThese two classes are then instantiated and the delivery stream is configured with the S3 prefix (raw/). \nFinally, the DDK DataPipeline construct is used to chain these two stages together into a data pipeline.\n\nComplete source code of the data pipeline above can be found in \n[AWS DDK Examples - Basic Data Pipeline](https://github.com/aws-samples/aws-ddk-examples/tree/main/basic-data-pipeline)\n\n\n### Official Resources\n- [Workshop](https://catalog.us-east-1.prod.workshops.aws/workshops/3644b48b-1d7c-43ef-a353-6edcd96385af/en-US)\n- [Documentation](https://awslabs.github.io/aws-ddk/)\n- [API Reference](https://awslabs.github.io/aws-ddk/release/stable/api/index)\n- [Examples](https://github.com/aws-samples/aws-ddk-examples/)\n\n## Getting Help\n\nThe best way to interact with our team is through GitHub.  You can open an issue and choose from one of our templates for bug reports, feature requests, or documentation issues.  If you have a feature request, don't forget you can search existing issues and upvote or comment on existing issues before creating a new one.\n\n## Contributing\n\nWe welcome community contributions and pull requests.  Please see [CONTRIBUTING.md](./CONTRIBUTING.md) for details on how to set up a development\nenvironment and submit code.\n\n## Other Ways to Support\n\nOne way you can support our project is by letting others know that your organisation uses the DDK.  If you would like us to include your company's name and/or logo in this README file, please raise a 'Support the DDK' issue.  Note that by raising a this issue (and related pull request), you are granting AWS permission to use your company’s name (and logo) for the limited purpose described here and you are confirming that you have authority to grant such permission.\n\n## License\nThis project is licensed under the Apache-2.0 License. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fawslabs%2Faws-ddk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fawslabs%2Faws-ddk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fawslabs%2Faws-ddk/lists"}