Skip to content
This repository has been archived by the owner on Jun 23, 2021. It is now read-only.
James Hood edited this page Oct 12, 2019 · 16 revisions

Welcome to the realworld-serverless-application wiki!

This project is an adaptation of the AWS Serverless Application Repository. Its primary objective is to serve as a case study of how to build a real world application using a combination of serverless technologies and approaches. The project captures key architectural components, code structure, deployment techniques, testing approaches, and operational practices of the AWS Serverless Application Repository - a production-grade AWS service, written in Java and built using serverless technologies.

What is in it

  1. A backend component that uses AWS Lambda and API Gateway to support 5 REST APIs: CreateApplication, GetApplication, UpdateApplication, DeleteApplication, and ListApplications
  2. A frontend website component hosted on S3 with authentication and authorization provided by Amazon Cognito.
  3. An operations (DevOps) component providing alarms and dashboards provided by Amazon CloudWatch.
  4. An analytics component that provides ad hoc service data queries provided by Amazon Athena.

How to use it

You can use it in the following ways:

  1. As a study: All the source code, tests, and infrastructure templates are available to review, fork and modify for custom use.
  2. Deploy it all at once: This will deploy the whole project in your AWS account. See the Quick Start for a step by step guide.
  3. Setup a more production-like deployment environment where each individual component is configured with its own independent Continuous Integration (CI) and Continuous Deployment (CD) pipeline. See the CI/CD setup instructions for a step by step guide.