How to deploy different kinds of apps
Continuous Deployment
Hooking up databases, APIs, and services
Domains, DNS, a little security (environment keys), getting it live
Awesome (free) tools you can use today!
Continuous Integration - no testing and code validation
Front-end or back-end development frameworks or techniques
Logging, metrics, scaling, and durability
You know how to make web apps (somehow)
You know how to use Git
You are comfortable with a command line
You don't need a server or databases.
You aren't worried about load times.
You don't need to render HTML on the server.
You are using a client-side framework, like React, Angular, Vue, etc.
You have lots of static data (like a blog)
You have tooling to auto-deploy when the data changes
You want your load-time to be fast.
You have lots of dynamic content (like comments)
You want load-time to be fast
You can afford a web server (or are okay with the limitations of free)
When you need a full-blown server backend, especially not NodeJS
When you run long-running processes or background processes
When you need to support websockets or your server needs to stay on