AWS の新ツールキット AWS Blocks が面白そうなので早速触ってみた

--

2026年6月17日にAWSから新しいTool KitとしてAWS Blocksが発表されました!

AWS が AWS でアプリケーションバックエンドを作成するためのオープンソースフレームワークである AWS Blocks を発表 (プレビュー) - AWS
AWS の新機能についてさらに詳しく知るには、 AWS が AWS でアプリケーションバックエンドを作成するためのオープンソースフレームワークである AWS Blocks を発表 (プレビュー)
AWS が AWS でアプリケーションバックエンドを作成するためのオープンソースフレームワークである AWS Blocks を発表 (プレビュー) - AWS favicon https://aws.amazon.com/jp/about-aws/whats-new/2026/06/aws-blocks-preview/

公式ドキュメントの What is AWS Blocks? にてツールの特徴を確認したところ、AI主導の開発を強く意識したツールキットになっていると感じました。

  • 型安全な開発: バックエンドで定義した型をそのままフロントエンドで共有可能

  • AIとの親和性: npmパッケージの Steering file など、AIが理解しやすい構造

  • ローカルファースト: AWSアカウント不要でローカル動作するため、AIによる高速な検証・反復が可能

ローカルで検証した後には自動で生成されるAWS CDKのコードを利用してそのままシームレスにAWS環境へデプロイできるようになっています。

さっそく手元で動かしてみる

公式のサンプルアプリケーションが提供されていたので、実際に手を動かして検証してみました。

1. ローカルでの起動

以下のコマンドを実行すると、ローカル環境にTodoアプリケーションが起動します。

npm create @aws-blocks/blocks-app@latest my-app
cd my-app
npm install
npm run dev

2. AWSへのデプロイと検証

AWSにデプロイして検証する場合は、以下のコマンドを使用します。内部で利用しているAWS CDKをデプロイするため、事前に npx cdk bootstrap を実行しておきましょう。

npm run sandbox

このコマンドを実行すると、「フロントエンドはローカル、バックエンドのみAWSにホストされた環境」で動作します。

サンプルアプリでログインを試してみたところ、DynamoDBに認証情報が正しく追加されているのを確認できました。 DynamoDB authentication data

DynamoDB authentication data

さらにTodoアプリを操作すると、バックエンド(AWS側)へリアルタイムにデータが反映されていました。

Todo app data Todo app data

AWS Blocksの仕組みとサポートされているコンポーネント

AWS Blocksの面白いところは、コード上で宣言したBlockが、開発環境と本番環境(AWS)の差分を吸収してくれる抽象化レイヤーとして機能する点にあります。ローカル開発ではマシン上で動作するインフラですが、本番ではCDKを経由してAWSのベストプラクティスに則ったリソースが作成されます。

AWS Blocks concepts - AWS Blocks
Learn the core concepts and architecture of AWS Blocks, including Blocks, scopes, the IFC layer, and how code maps to infrastructure.
AWS Blocks concepts - AWS Blocks favicon https://docs.aws.amazon.com/blocks/latest/devguide/concepts.html

基本アーキテクチャとしては、バックエンドコードがAWS Lambdaにデプロイされ、各Blockが提供するリソースへはLambdaからAWS SDK経由でアクセスする形になるようです。

今回のサンプルアプリでは、以下のBlockが使用されていました。

  • AuthBasic: JWTセッションを利用した認証
  • DistributedTable: Amazon DynamoDB
  • Realtime: WebSocket

その他にも、すでに多くのAWSサービスがサポートされています。Amazon Aurora DSQL が初期からサポートされているのは面白いですね。

Block名対応するAWSサービス / 機能
Databaseフル機能のPostgreSQL, Amazon Aurora Serverless v2
DistributedDatabaseAmazon Aurora DSQL
FileBucketAmazon S3
AuthCognitoAmazon Cognito
AgentAmazon Bedrockを利用したAgent機能
RealtimeAPI Gateway (WebSocket)
AsyncJobSQS + Lambda によるバックグラウンドジョブ

💡 すべてのBlockリストはこちら(公式ドキュメント)から確認できます。

Amplifyとの違い

AWS Amplify is a set of tools and services for building full-stack applications. AWS Blocks and Amplify are complementary. Amplify provides hosting, CI/CD, and a managed backend experience, while AWS Blocks focuses on type-safe infrastructure-from-code with local-first development. For more information, see the Amplify documentation.

競合ではなく、Amplifyはhosting, CI/CD, マネージドバックエンドを提供するのに対して、AWS Blocksはローカルファーストな開発とともに型安全なコードからインフラの生成を担うとのことです。

まとめ

ローカルで開発しつつ、最終的には使い慣れたAWS CDKへ自動でエクスポートできる仕組みは、特にAI駆動開発において非常に強力だと感じました。プレビュー状態ですが実際に動かしてみてそのポテンシャルを感じました。

公式ドキュメントの以下のページも参考になりそうです。

  • AWS Blocksを用いた実装例: Examples

  • 本番運用(Production)におけるセキュリティの注意点: Security

  • 設計・開発のベストプラクティス: Best Practices

    • 特に一番最後にはAI Agentとの開発手法について記載されています