// packages/api/lib/appsync-stack.ts import * as appsync from 'aws-cdk-lib/aws-appsync'; import * as dynamodb from 'aws-cdk-lib/aws-dynamodb'; const api = new appsync.GraphqlApi(this, 'MyUnifiedApi', { name: 'UnifiedBlogApi', schema: appsync.Schema.fromAsset('graphql/schema.graphql'), // single source of truth });
How to share schemas, resolvers, and logic across multiple frontends without losing your mind. appsync unified repo
Because everything lives in packages/api , any frontend change that expects a new field forces you to update the resolver in the same PR . The magic of the monorepo happens in package.json scripts. After every schema change, regenerate all clients automatically. // packages/api/lib/appsync-stack
Try the official @aws-solutions-constructs/aws-appsync-dynamodb pattern inside a monorepo, or explore graphql-mesh for federation-like patterns. Do you run AppSync in a monorepo? What has been your biggest challenge? Let me know in the comments. What has been your biggest challenge
Example resolver ( getPost.ts ):