{"id":40662633,"url":"https://github.com/sudokar/cdk-appsync-typescript-resolver","last_synced_at":"2026-01-24T21:24:43.851Z","repository":{"id":184679862,"uuid":"672304733","full_name":"sudokar/cdk-appsync-typescript-resolver","owner":"sudokar","description":"AWS CDK construct to build AppSync JS resolvers using Typescript ","archived":false,"fork":false,"pushed_at":"2026-01-20T05:06:51.000Z","size":615,"stargazers_count":12,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-20T09:16:24.579Z","etag":null,"topics":["appsync","aws-appsync","aws-cdk","cdk","javascript","resolver","typescript"],"latest_commit_sha":null,"homepage":"https://constructs.dev/packages/cdk-appsync-typescript-resolver/v/0.0.4?lang=typescript","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/sudokar.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-07-29T16:04:51.000Z","updated_at":"2026-01-20T05:04:12.000Z","dependencies_parsed_at":"2025-11-29T10:02:53.426Z","dependency_job_id":null,"html_url":"https://github.com/sudokar/cdk-appsync-typescript-resolver","commit_stats":{"total_commits":31,"total_committers":1,"mean_commits":31.0,"dds":0.0,"last_synced_commit":"72a7deddc95d6b3b33073a530728864a36e8b61b"},"previous_names":["sudokar/cdk-appsync-typescript-resolver"],"tags_count":41,"template":false,"template_full_name":null,"purl":"pkg:github/sudokar/cdk-appsync-typescript-resolver","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudokar%2Fcdk-appsync-typescript-resolver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudokar%2Fcdk-appsync-typescript-resolver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudokar%2Fcdk-appsync-typescript-resolver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudokar%2Fcdk-appsync-typescript-resolver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sudokar","download_url":"https://codeload.github.com/sudokar/cdk-appsync-typescript-resolver/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudokar%2Fcdk-appsync-typescript-resolver/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28630938,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T04:47:28.174Z","status":"ssl_error","status_checked_at":"2026-01-21T04:47:22.943Z","response_time":86,"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":["appsync","aws-appsync","aws-cdk","cdk","javascript","resolver","typescript"],"created_at":"2026-01-21T09:03:44.349Z","updated_at":"2026-01-21T09:03:45.017Z","avatar_url":"https://github.com/sudokar.png","language":"TypeScript","readme":"# cdk-appsync-typescript-resolver\n\n[![npm (scoped)](https://img.shields.io/npm/v/cdk-appsync-typescript-resolver)](https://www.npmjs.com/package/cdk-appsync-typescript-resolver)\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/73988a5fee2a473a92ea3ecb288dfbc3)](https://app.codacy.com/gh/sudokar/cdk-appsync-typescript-resolver/dashboard?utm_source=gh\u0026utm_medium=referral\u0026utm_content=\u0026utm_campaign=Badge_grade)\n[![GitHub Workflow Status (branch)](https://img.shields.io/github/actions/workflow/status/sudokar/cdk-appsync-typescript-resolver/release.yml?branch=main\u0026label=release\u0026style=flat-square)](https://github.com/sudokar/cdk-appsync-typescript-resolver/actions/workflows/release.yml)\n[![GitHub release (latest SemVer)](https://img.shields.io/github/release/sudokar/cdk-appsync-typescript-resolver?sort=semver\u0026style=flat-square)](https://github.com/sudokar/cdk-appsync-typescript-resolver/releases)\n[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/sudokar/nx-serverless)\n![Maintained](https://img.shields.io/maintenance/yes/2024.svg)\n[![Gitpod ready-to-code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod\u0026style=flat-square)](https://gitpod.io/#https://github.com/sudokar/cdk-appsync-typescript-resolver)\n\nConstructs to transpile and bundle Typescript to valid AWS Appsync's JS resolvers\n\n[![View on Construct Hub](https://constructs.dev/badge?package=cdk-appsync-typescript-resolver)](https://constructs.dev/packages/cdk-appsync-typescript-resolver)\n\n# ✨ Constructs\n\n- [TypescriptUnitResolver](src%2Flib%2FJSExpressPipelineResolver.ts) - Unit resolver with typescript source\n- [AppsyncTypescriptFunction](src%2Flib%2FAppsyncTypescriptFunction.ts) - Appsync function with typescript source\n\n# 🚀 Usage\n\n- TypescriptUnitResolver\n\n```typescript\nimport { TypescriptUnitResolver } from 'cdk-appsync-typescript-resolver'\n\nconst resolver = new TypescriptUnitResolver(stack, \"DemoResolver\", {\n    api: new appsync.GraphqlApi(...),\n    typeName: \"Query\",\n    fieldName: \"hello\",\n    path: path.join(__dirname, \"path\", \"to\", \"file.ts\"),\n    sourceMap: true,\n});\n```\n\n- AppsyncTypescriptFunction\n```typescript\nimport { AppsyncTypescriptFunction } from 'cdk-appsync-typescript-resolver'\n...\nconst appsyncFunction = new AppsyncTypescriptFunction(stack, \"TSDemoFunction\", {\n    name: \"TSDemoFunction\",\n    api: new appsync.GraphqlApi(...),\n    path: path.join(__dirname, \"path\", \"to\", \"file.ts\"),\n    dataSource: new appsync.DynamoDbDataSource(...),\n    sourceMap: true,\n});\n```\n\n\u003e Tip: Use [GraphQL Code Generator](https://the-guild.dev/graphql/codegen) to generate Typescript types from GraphQL schema(s) to use in resolvers\n\nCheckout the demo project for examples [cdk-appsync-typescript-resolver-demo](https://github.com/sudokar/cdk-appsync-typescript-resolver-demo)\n\n# References\n\n[JavaScript resolvers overview](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-overview-js.html)\n\n[Bundling, TypeScript, and source maps](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-overview-js.html#additional-utilities)\n\n[GraphQL Code Generator](https://the-guild.dev/graphql/codegen)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsudokar%2Fcdk-appsync-typescript-resolver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsudokar%2Fcdk-appsync-typescript-resolver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsudokar%2Fcdk-appsync-typescript-resolver/lists"}