AWS CloudFormation vs Webpack: What are the differences?
AWS CloudFormation and Webpack are primarily classified as "Infrastructure Build" and "JS Build Tools / JS Task Runners" tools respectively.
"Automates infrastructure deployments" is the top reason why over 36 developers like AWS CloudFormation, while over 307 developers mention "Most powerful bundler" as the leading cause for choosing Webpack.
Webpack is an open source tool with 49.8K GitHub stars and 6.27K GitHub forks. Here's a link to Webpack's open source repository on GitHub.
According to the StackShare community, Webpack has a broader approval, being mentioned in 2209 company stacks & 1344 developers stacks; compared to AWS CloudFormation, which is listed in 197 company stacks and 77 developer stacks.
What is AWS CloudFormation?
What is Webpack?
Need advice about which tool to choose?Ask the StackShare community!
Sign up to add, upvote and see more prosMake informed product decisions
Sign up to get full access to all the companiesMake informed product decisions
Sign up to get full access to all the tool integrationsMake informed product decisions
We use Terraform because we needed a way to automate the process of building and deploying feature branches. We wanted to hide the complexity such that when a dev creates a PR, it triggers a build and deployment without the dev having to worry about any of the 'plumbing' going on behind the scenes. Terraform allows us to automate the process of provisioning DNS records, Amazon S3 buckets, Amazon EC2 instances and AWS Elastic Load Balancing (ELB)'s. It also makes it easy to tear it all down when finished. We also like that it supports multiple clouds, which is why we chose to use it over AWS CloudFormation.
I use Terraform because it hits the level of abstraction pocket of being high-level and flexible, and is agnostic to cloud platforms. Creating complex infrastructure components for a solution with a UI console is tedious to repeat. Using low-level APIs are usually specific to cloud platforms, and you still have to build your own tooling for deploying, state management, and destroying infrastructure.
However, Terraform is usually slower to implement new services compared to cloud-specific APIs. It's worth the trade-off though, especially if you're multi-cloud. I heard someone say, "We want to preference a cloud, not lock in to one." Terraform builds on that claim.
Terraform Google Cloud Deployment Manager AWS CloudFormation
Using Webpack is one of the best decision ever. I have used to Grunt and gulp previously, but the experience is not the same, and despite I know there are other bundlers like Parcel, Webpack gives me the perfect balance between automatization and configuration. The ecosystem of tools and loaders is amazing, and with WebPack #merge, you can modularize your build and define standard pieces to assemble different build configurations. I don't like processes where you cannot see their guts, and you have to trust in magic a little bit too much for my taste. But also I don't want to reinvent the wheel and lose too much time configuring my build processes. And of course, I love #WebPackDevServer and hot reloading.
Manually clicking around the AWS UI or scripting AWS CLI calls can be both a slow and brittle process.
We needed to be able to reconstruct CloudRepo's infrastructure in case of disaster or moving to another AWS Region.
Setting up our infrastructure with CloudFormation allows us to update it easily as well as duplicate or recreate things when the need arises.
Opstax uses CloudFormation for anything infrastructure related! CloudFormation allows us to use infrastructure-as-code as a constant blueprint/map of our environment. It means we can accurately and efficiently deploy replicated or new infrastructure with no time wasted clicking around and no human error.
Webpack is the best bundler. Period.
Yes, it has a(n arguably) messy documentation, and a steep learning curve; but once you get the hang of it, there is nothing you cannot do with it.
Use it and you don’t have to use any other bundler at all.
It has a vivid ecosystem, and great plugin support.
My preferred build tool; allows me to bundle my JSX, JS, CSS files for easy access and I can pass the bundle through my node server for server side rendering.
Flexible building and compiling of source for browser consumption, mainly for JS, but experimenting a little with CSS (although I prefer StylusJS for CSS).
We use this to optimise the delivery of the client-side for our revised Admin System, so it's able to be delivered to browsers as efficiently as possible.
Manage infrastructure as codes. Native AWS solution so it has better support to AWS resources than Terraform, also can leverage AWS Business Support.
Webpack compiles files to bundles with source maps. Using Webpack you can use the latest features (ES6) and have it compiled to compliant js.