За даними Infoq, AWS випустила AWS Blocks у публічний прев'ю. Це open-source TypeScript фреймворк, де кожен «Block» інкапсулює код застосунку, локальну реалізацію розробки та необхідну інфраструктуру AWS для продакшену. Розробники можуть запустити команду npm run dev і отримати робочий додаток з Postgres, автентифікацією, обміном повідомленнями в режимі реального часу та сховищем файлів без потреби створювати обліковий запис AWS.
Автоматизація розгортання та локальна розробка
Найбільш значущим аспектом є те, що при розгортанні той самий код працює на Lambda, DynamoDB, Aurora, API Gateway та Bedrock без жодних змін. Blocks позиціонується як рішення, яке усуває «потребу вивчати інструменти інфраструктури». Фреймворк має композитну модель: кожен Block — це npm-пакет, що покриває одну бекенд-можливість, наприклад, бази даних, автентифікацію користувачів, AI-агентів чи фонові завдання. Розробники імпортують потрібні Blocks та складають їх у композицію, а фреймворк генерує інфраструктуру AWS відповідно до найкращих практик.
Інтеграція з AI та типова безпека
Унікальність Blocks полягає в його архітектурній основі, яка враховує епоху, коли AI-агенти пишуть код. Вбудовані файли керування спрямовують ці агенти до коректної архітектури без необхідності налаштування з боку розробника. Якщо розробник просить агента «додати автентифікацію та базу даних», агент генерує робочий код, який функціонує локально і успішно деплоїться на сервіси рівня продакшену AWS завдяки обмеженням фреймворку. Крім того, типова безпека зберігається від схеми даних до фронтенду без етапу генерації коду, підтримуючи такі веб-фреймворки як Next.js, Nuxt та React.
Гнучкість та співіснування з CDK
Модель розробки «локально в першу чергу» є найбільш зручною для розробників. Blocks використовує умовний експорт Node.js для завантаження різних реалізацій залежно від контексту: рядок new KVStore(scope, 'todos') стає внутрішньою пам'яттю під час локальної розробки та таблицею DynamoDB при деплої.
Важливо зазначити, що Blocks не створює замкненого екосистеми. Механізм «CDK escape hatch» дозволяє інтегрувати будь-які конструкції CDK поруч із Blocks. Якщо вбудованих Blocks недостатньо для певного сценарію використання, розробники можуть перейти до прямого конфігурування ресурсів за допомогою CDK. Це забезпечує гнучкість і можливість створення кастомних Blocks, які пакують інфраструктуру та локальні мокви.
Хоча Amplify Gen 2 також пропонує підхід «backend-as-code» на базі TypeScript поверх CDK, AWS позиціонує обидва продукти як взаємодоповнюючі: Amplify забезпечує хостинг і CI/CD, тоді як Blocks фокусується на типобезпечній інфраструктурі з локальною розробкою.
Цей фреймворк значно знижує витрати як на навчання людей, так і на помилки, які можуть зробити AI-агенти під час генерації коду. Наразі доступно близько 20 Blocks, що охоплюють бази даних (Postgres через Aurora, DynamoDB), автентифікацію (Cognito) та роботу з AI через Bedrock.