a stack-separated way to bringing together common AWS services useful in a fullstack application that uses AWS Amplify libraries

Overview

Fullstack CDK Helpers

This project helps developers create common AWS services that are useful in creating fullstack applications. Backend services are deployed as separate CDK stacks and export the necessary outputs needed for your frontend projects.

🗒️ This is not an NPM package or construct, but rather a starting template for your own CDK applications and is meant to be extended and modified

Service Offerings

Cognito

The lib/authStack.ts file creates the following services

  • Cognito Userpool
  • Cognito Userpool Group (if specified)
  • Cognito Identity Pool

🗒️ The identity pool helps in providing IAM permission access to both authenticated and unauthenticated users as well as AWS services such as Amazon S3.

S3

The lib/fileStorage.ts file creates an Amazon S3 bucket and comes configured with managed polcies that are in line with what the Amplify Storage library uses as acceptable defaults.

AppSync API

Thelib/apiStack.ts file creates an AppSync API that is based on a Todo application.

Note that this stack comes preconfigured with the following:

  • A sample graphql schema
  • Userpool authorization
  • API Key authorization
  • IAM authorization
  • DynamoDB as a datasource

In addition, this package makes use of the @aws-cdk/aws-appsync-alpha npm package for easiliy creating the request and response mapping templates.

DynamoDB API

The lib/databaseStack.ts file creates a single DynamoDB table that is used as a datasource for the AppSync API above.

Integrating with a frontend

For a full walkthrough on how one might integrate the output from these stacks into a frontend application that makes use of AWS Amplify libraries, refer to this fullstack guide.

Useful commands

  • npm run build compile typescript to js
  • npm run watch watch for changes and compile
  • cdk deploy deploy this stack to your default AWS account/region
  • cdk diff compare deployed stack with current state
  • cdk synth emits the synthesized CloudFormation template
You might also like...

A framework for NodeJS deveopers bringing dreams to reality!

ELIXOR A framework for NodeJS enthusiasts! What does it do? Short Answer Elixor is a framework for NodeJS developers that lets you build cross-platfor

Jun 25, 2022

🖼️ Bringing Material Design 3 to the Astro Blog. [WIP]

🖼️ Gumori You [WIP] Bringing Material Design 3 to the Astro Blog. 👥 Contributing If you're interested in contributing to Gumori You, pls read the fo

Oct 16, 2022

Useful JavaScript base classes for efficient and quick solutions to common problems.

JavaScript Base Classes You can find the full documentation on the website. Description Useful JavaScript base classes for efficient and quick solutio

Nov 15, 2022

A monorepo that uses the AWS Cloud Development Kit to deploy and configure nanomdm on AWS lambda.

NanoMDM on AWS This repo builds and configures a nanomdm server to run on AWS lambda. It uses the Cloud Development Kit and tries to follow best pract

May 26, 2022

Calculates maximum composite SLA for a list of sequentially provided cloud services or your custom-defined services.

SlaMax Calculates maximum composite SLA for a list of sequentially provided cloud services or your custom-defined services. Here are a few use-cases y

Sep 19, 2022

This repository demonstrates how to integrate your Dialogflow agent with 3rd-party services services using a Node.JS backend service

This repository demonstrates how to integrate your Dialogflow agent with 3rd-party services services using a Node.JS backend service

This repository demonstrates how to integrate your Dialogflow agent with 3rd-party services services using a Node.JS backend service. Integrating your service allows you to take actions based on end-user expressions and send dynamic responses back to the end-user.

Jul 21, 2022

Learn Web 2.0 and Web 3.0 Development using Next.js, Typescript, AWS CDK, AWS Serverless, Ethereum and AWS Aurora Serverless

Learn Web 2.0 Cloud and Web 3.0 Development in Baby Steps In this course repo we will learn Web 2.0 cloud development using the latest state of the ar

Jan 3, 2023

MerLoc is a live AWS Lambda function development and debugging tool. MerLoc allows you to run AWS Lambda functions on your local while they are still part of a flow in the AWS cloud remote.

MerLoc is a live AWS Lambda function development and debugging tool. MerLoc allows you to run AWS Lambda functions on your local while they are still part of a flow in the AWS cloud remote.

MerLoc MerLoc is a live AWS Lambda function development and debugging tool. MerLoc allows you to run AWS Lambda functions on your local while they are

Dec 21, 2022
Owner
Focus Otter
Serverless solutions for makers, builders, and small businesses
Focus Otter
This project is an educational asset demonstrating the use of AWS amplify, Graphql API, Appsync, Material UI and amazon cognito. T

This project is an educational asset demonstrating the use of AWS amplify, Graphql API, Appsync, Material UI and amazon cognito. This project belongs to Black bird and this repo will remain dormant until final decision.

Shikhar 7 Oct 12, 2022
AWS Lambda & Serverless - Developer Guide with Hands-on Labs. Develop thousands line of aws lambda functions interact to aws serverless services with real-world hands-on labs

AWS Lambda & Serverless - Developer Guide with Hands-on Labs UDEMY COURSE WITH DISCOUNTED - Step by Step Development of this Repository -> https://www

awsrun 35 Dec 17, 2022
The awesomebooks project is a simple list, but separated into 3 parts and given a retro feel. The main page is where we can add books, and on another page we can see the list, and remove items. There is also a "contact-us" page.

Awesome Books This is the restructured version of the famous awesome-books project! Here you can find JavaScript broken into modules, using import-exp

Matt Gombos 12 Nov 15, 2022
Under the Sea is an official AWS workshop delivered by AWS SAs and AWS Partners to help customers and partners to learn about AIOps with serverless architectures on AWS.

Under the Sea - AIOps with Serverless Workshop Under the Sea is an exciting MMORPG developed by the famous entrepreneur behind Wild Rydes, the most po

AWS Samples 4 Nov 16, 2022
This is a full-stack exercise tracker web application built using the MERN (MongoDB, ExpressJS, ReactJS, NodeJS) stack. You can easily track your exercises with this Full-Stack Web Application.

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

WMouton 2 Dec 25, 2021
@nodesecure/ci brings together a set of tools to identify dependencies vulnerabilities and track most common malicious code and patterns

NodeSecure CI Action @nodesecure/ci brings together a set of tools to identify dependencies vulnerabilities and track most common malicious code and p

null 7 Jul 29, 2022
🥾 A simple way to do testing AWS Services and Jest or Serverless and Jest

jest-localstack-preset Install Install via yarn or npm $ yarn add https://github.com/thadeu/jest-localstack-preset.git or $ npm i https://github.com/t

thadeu 5 Oct 1, 2022
Catalogist is the easy way to catalog and make your software and (micro)services visible to your organization in a lightweight and developer-friendly way.

catalogist ?? ?? ?? ?? ?? The easy way to catalog and make your software and (micro)services visible to your organization through an API You were a pe

Mikael Vesavuori 11 Dec 13, 2022
Fullstack Spotify clone app using NextJS and many other libraries.

Spotify Clone Spotify clone made with NextJS on both the client and server sides. For the database, I utilized Postgresql and Prisma ORM. I used Chakr

Mithat Ercan 6 Dec 7, 2022
Bringing an all Open-Source Platform to study Data Structures and Algorithms ⚡

NeoAlgo-Docs Bringing an all Open-Source Platform to study Data Structures and Algorithms ⚡ ?? Installation You will need to have NodeJS and Yarn inst

Tesseract Coding 24 Jun 2, 2022