Just an observation on the naming -- "Serverless UI" -- my first assumption from that was that this is some kind of _frontend_ to using Serverless. I was scanning for a demo in the repo when I realized it's actually a CLI utility.
Would be better if it leveraged open source serverless project like Fn Project than proprietary cloud technology that locks one in https://fnproject.io
> Serverless UI deploys each function in your /functions directory as a Node.js lambda behind a CDN and API Gateway for an optimal blend of performance and scalability.
> and API Gateway for an optimal blend of performance and scalability
Curious what HN's thoughts are on API Gateway. I've been very frustrated with it. I find a plain ALB simpler to work with and less weird. Sometimes to get API Gateway to pick up a change (via terraform) we have to log into the AWS Console to toggle a switch just to get our unrelated change to get picked up.
API GW is by far the flakiest AWS service I have used with Terraform. Even with all the badly documented depends_on that is required to make it mostly work it still was not great.
It kind of makes me feel like using a reverse engineered driver, it works, but some kind of underlying assumption or knowledge is missing that makes it behave weirdly.
In my experience there has been a lot of code-generation and configuration involved with deploying an Amplify application. Additionally, it required a connection to a git provider (at least this used to be the case)
My goal with Serverless UI was to make the experience as simple as possible to get started, while still allowing for integrating more advanced infrastructure as the application grows
Good question! This is meant to be a "zero-config" utility rather than a generic framework. Under the hood, Serverless UI uses the AWS CDK to build a CloudFormation template with a few assumptions built-in (eg. deploying a static UI, anything in /functions becomes an endpoint, etc).
As far as features go, it more closely aligns to Netlify, but with direct AWS integration.
Yeah, this is an excellent idea. The trouble with Netlify is that the moment you outgrow their walled garden you're destined to complect your architecture with other cloud services anyway. Might as well start off with a rich ecosystem like AWS to avoid this issue.
From the author in this thread: "Under the hood, Serverless UI uses the AWS CDK to build a CloudFormation template with a few assumptions built-in (eg. deploying a static UI, anything in /functions becomes an endpoint, etc)."
Yep! Diving deeper, the @serverlessui/construct package has a few custom constructs to facilitate the deployment. Additionally the @serverless/cli tool parses the project and configures a CDK App to synthesize and deploy.
Overall, it saves the manual setup and pre-configures a CDK application without any config for the end-user!