Our great sponsors
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
-
copilot-cli
The AWS Copilot CLI is a tool for developers to build, release and operate production ready containerized applications on AWS App Runner or Amazon ECS on AWS Fargate.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
I've started playing with AWS App Runner (https://aws.amazon.com/apprunner/) which makes things fairly simple. You just point to a github repo, tell it the build command and the run command and it will deploy your project in containers and even load balance and scale up automatically.
Now it's not fully baked yet. DNS configuration is broken if you want to use your own domain (see https://github.com/aws/apprunner-roadmap/issues/37 and https://github.com/aws/apprunner-roadmap/issues/65 ) but you can get around that by putting cloudFront in front with just a few more clicks (and you get the benefit of having some of your files cached if you want).
For JS developers trying to achieve what's outlined in the linked article: https://github.com/cheatcode/joystick
Very thin abstractions over HTML, CSS, JavaScript and Node.js that don't separate you from what you're trying to ship to the browser: HTML, CSS, and JavaScript. No "magic" or "hacks," just a bit of plumbing to make you more productive.
AWS offers a set of primitives, not frameworks. These low-level primitives can be combined to build anything you want. Vercel's Build Output API[1] is a level of abstraction higher.
Consider Image Optimization. In this post, there's a `/_vercel/image` URL made available to send an image and return it compressed with a format like `.webp`, if possible based on the browser.
With AWS, this would be a combination of S3 (store images), Lambda (compute the image transformations), Cloudfront (CDN), and Route53 (DNS). With the Build Output API, the entire infrastructure is defined by a JSON object (similar to Terraform). I do think the AWS CDK and Copilot[2] are making infra-as-code easier, but infra-as-filesystem[3] is an interesting twist.
[1]: https://vercel.com/blog/build-output-api
[2]: https://aws.github.io/copilot-cli/
[3]: https://news.ycombinator.com/item?id=32192498
Im building with featherjs[0] right now and I love it. Jwt, user handling, routing, and (most notably to me) real-time functionality is all built in. Probably the most rails-like backend framework I’ve worked with in Node so far.
[0] https://feathersjs.com/