What you’ll learn
  • what is the Core project application
  • what are the necessary cloud infrastructure resources on which the API project application relies on

The Core Project Application

The Core project application represents your project’s core cloud infrastructure resources. Essentially, these are your stateful resources, like Amazon DynamoDBexternal link for storing data, Amazon S3external link for storing files, and Amazon Cognitoexternal link for storing user information and authentication. Also, with the Amazon DynamoDB + Amazon OpenSearch setup, the project application also deploys an OpenSearch cluster via the Amazon OpenSearch Serviceexternal link.

Learn more about the different database setups in the introduction section.

The Core project application also deploys an Amazon EventBridgeexternal link, used for communication between different resources.


For brevity, the diagram doesn’t include network-level cloud infrastructure resources, like region, VPC, availability zones, and so on.

Webiny Cloud Infrastructure - Core - OverviewWebiny Cloud Infrastructure - Core - Overview
(click to enlarge)


The above diagram gives an overview of the complete cloud infrastructure that is deployed by your project’s Core project application.

1. Amazon Cognito

Although Webiny can work with multiple identity providers, by default, it works with Amazon Cognito A.

The service is utilized from the Default GraphQL API and Headless CMS GraphQL API AWS Lambda functions, both part of the API project application.

Learn more about the Headless CMS API in the Headless CMS GraphQL API Overview article.

2. Amazon S3

For storing all types of files, Webiny’s File Manager application uses Amazon S3 B. Note that the application also provides a way to securely serve files and resize images (more in the following sections).

3. Amazon EventBridge

Amazon EventBridge is used for communication between different cloud infrastructure resources.

4. Amazon DynamoDB and Amazon OpenSearch Service

Amazon DynamoDB and Amazon OpenSearch Service are used as your project’s databases. Note that the latter is only used if you’re using the Amazon DynamoDB + Amazon OpenSearch setup.


How Is DynamoDB Data Structured?

Webiny is following the approach called single-table designexternal link, which advocates for storing all the application data in a single DynamoDB table. So, all of the Webiny applications are storing data in a single table, with distinct primary and secondary keys in order to avoid clashing of data.