Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
j13d authored Dec 5, 2018
1 parent 9685fc7 commit d74db3f
Showing 1 changed file with 13 additions and 12 deletions.
25 changes: 13 additions & 12 deletions assets/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
## AWS Bookstore Demo App

AWS Bookstore Demo App is a full-stack sample web application that creates a storefront (and backend) for customers to shop for fictitious books. The entire application can be created with a single CloudFormation template.
AWS Bookstore Demo App is a full-stack sample web application that creates a storefront (and backend) for customers to shop for fictitious books. The entire application can be created with a single CloudFormation template. [Try out the deployed application here](https://d2h3ljlsmzojxz.cloudfront.net/)!

You can browse and search for books, look at recommendations and best sellers, manage your cart, checkout, view your orders, and more. Get started below!
You can browse and search for books, look at recommendations and best sellers, manage your cart, checkout, view your orders, and more. Get started with building your own below!
 

## License Summary
Expand Down Expand Up @@ -80,7 +80,8 @@ You can choose to customize the template to create your own bookstore, modify it
To get the AWS Bookstore Demo App up and running in your own AWS account, follow these steps (if you do not have an AWS account, please see [How do I create and activate a new Amazon Web Services account?](https://aws.amazon.com/premiumsupport/knowledge-center/create-and-activate-aws-account/)):

1. Log into the [AWS console](https://console.aws.amazon.com/) if you are not already
2. Use [this deeplink](https://console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/new?stackName=MyBookstore&templateURL=https://s3.amazonaws.com/aws-bookstore-demo/master-fullstack.template) to open the AWS CloudFormation console and create a new stack.
2. Choose **Launch Stack** to open the AWS CloudFormation console and create a new stack.
[![Launch Stack](https://cdn.rawgit.com/buildkite/cloudformation-launch-stack-button-svg/master/launch-stack.svg)](https://console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/new?stackName=MyBookstore&templateURL=https://s3.amazonaws.com/aws-bookstore-demo/master-fullstack.template)
3. Continue through the CloudFormation wizard steps
1. Name your stack, i.e. MyBookstore
2. Name your S3 bucket (must be lowercase and has to unique across all existing bucket names in Amazon S3). See [bucket naming rules](https://docs.aws.amazon.com/AmazonS3/latest/dev//BucketRestrictions.html#bucketnamingrules).
Expand Down Expand Up @@ -232,7 +233,7 @@ GET /books/{:id} (GetBook)

**Cart (DynamoDB)**

GET /cart (ListOrdersInCart)
GET /cart (ListItemsInCart)
POST /cart (AddToCart)
PUT /cart (UpdateCart)
DELETE /cart (RemoveFromCart)
Expand Down Expand Up @@ -260,7 +261,7 @@ GET /search (SearchES)

### AWS Lambda

AWS Lambda is used in a few different places to run the application, as shown in the architecture diagram. The important Lambda functions that are deployed as part of the template are shown here. In the cases where the response fields are blank, the application will return a statusCode 200 or 500 for success or failure, respectively.
AWS Lambda is used in a few different places to run the application, as shown in the architecture diagram. The important Lambda functions that are deployed as part of the template are shown below, and available in the [functions](/functions) folder. In the cases where the response fields are blank, the application will return a statusCode 200 or 500 for success or failure, respectively.

 

Expand Down Expand Up @@ -318,17 +319,17 @@ GetBookResponse {

 

**ListOrdersInCart**
**ListItemsInCart**
Lambda function that lists the orders a user has placed.

```js
ListOrdersInCartRequest {
ListItemsInCartRequest {

}
```

```js
ListOrdersInCartResponse {
ListItemsInCartResponse {
orders[]
}
```
Expand Down Expand Up @@ -550,9 +551,9 @@ customerId: string
**Other Lambda functions**
There are a few other Lambda functions used to make the AWS Bookstore Demo App work, and they are listed here:

1. SearchES - Lambda function that returns a list of books based on provided search parameters in the request.
2. DDBStreaming - Lambda function that updates the ElasticSearch cluster when new books are added to the store.
3. RedisStreaming - Updates Leaderboard via the ElastiCache for Redis cluster as orders are placed.
1. Search - Lambda function that returns a list of books based on provided search parameters in the request.
2. updateSearchCluster - Lambda function that updates the ElasticSearch cluster when new books are added to the store.
3. updateBestsellers - Updates Leaderboard via the ElastiCache for Redis cluster as orders are placed.

 

Expand Down Expand Up @@ -591,7 +592,7 @@ dynamodb:Query - table/Books
AWSLambdaBasicExecutionRole
dynamodb:GetItem - table/Books

**ListOrdersInCartLambda**
**ListItemsInCartLambda**
AWSLambdaBasicExecutionRole
dynamodb:Query - table/Cart

Expand Down

0 comments on commit d74db3f

Please sign in to comment.