A quick overview about AWS Application Composer
Tags: aws, cloud, community, serverless
Published: 2022-12-03 21:04:17

- A couple of days ago, in **re:invent 2022** , [Werner Vogels](https://twitter.com/Werner), Amazon's CTO announced launching "AWS Application Composer", a visual designer that you can use to build your serverless applications from multiple AWS services 🤯.


![tweet](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rcmvjvjy01xf6yxyeh6k.jpg)

- It has an interactive builder to design your application
architecture by selecting, connecting, and defining AWS resources on a canvas. As you design, Application Composer automatically develops your infrastructure as code (IaC) templates, following AWS best practices. 


![Drag and drop resources](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b52kfn1ytivo66zz42p7.gif)

- You can start with an initial sketch, create deployable code,
and integrate into your current workflows to improve your development experience.


- Then you can configure the actions and interactions of your AWS resources, specify their properties.

![description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/b422nixx5gn4veem2jnq.gif)

- For example, The following screenshot shows the Application Composer canvas with three unconnected resources:
an `API Gateway` with an HTTP GET method, a `Lambda function`, and a `DynamoDB table`, the DynamoDB table is selected, revealing the Resource properties panel where you can configure a
resource's properties.


![description2](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m10l43mziq8wsps68bsn.jpg)

- You can easily connect resources to each other by clicking and dragging from one resource facet to another. Permissions are automatically composed for these resources to interact with each other.


![connect](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8uf8kj3aqz0t48ctjjwg.gif)


#Define your infrastructure as code (IaC) templates:
- As you design, Application Composer automatically composes your AWS CloudFormation and AWS Serverless Application Model (AWS SAM) templates, following AWS best practices.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vocrc0j1ngrk3u171dsl.gif)

- You can view and modify your templates directly from within Application Composer. Application Composer automatically
syncs changes between the visual canvas and your template code.

- The following screenshot shows the Template view in Application Composer. The application template is
a .yaml file with AWS SAM template and AWS CloudFormation template resources. The resources include an `API Gateway API (AWS::Serverless::Api)`, a `Lambda function (AWS::Serverless::Function)`, and a `DynamoDB table (AWS::DynamoDB::Table)`.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rs9dj102myqcu3bdlsqp.jpg)
________________

#Connected Vs Un Connected Mode:
 ➤ <u>**Conneted Mode:**</u> lets you automatically sync and save your template files and project folders locally as
you design in Application Composer. To use this feature, a web browser that supports the File System
Access API is required.
  ➥ **Connected** mode gives you also a cool feature, it allows you to use Application Composer with local tools such as an IDE. Any changes made locally will automatically reflect here.

![ide](https://a.b.cdn.console.awsstatic.com/566ac1f1385bff33002debbaafda744e2210f6c8347518582527a51c467ebe6b/onboarding/step5.gif)

  ➤<u>**UnConneted Mode:**</u> If you prefer to use a web browser that doesn’t support the File System Access API or prefer to not use
connected mode, you can use Application Composer in unconnected mode. With unconnected mode, you
manually upload and save your template files as you design.

_________________
- Unfortunately, AWS application composer is only available in 6 Regions for now.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2frp6sv144s45dbusxrd.jpg)

____________

- You can find official developer guide [here](https://docs.aws.amazon.com/pdfs/application-composer/latest/dg/application-composer.pdf).

Follow me on:
[Linkedin](https://www.linkedin.com/in/ahmedadel333/).