Discharge is, as far as I’m aware, the easiest way to deploy static websites to Amazon S3. I spent hours poring over AWS’s terrible docs so no one else would have to.

The highlights are:

Very little understanding of AWS required

Interactive UI for configuring deployment

Step-by-step list of what’s happening

Support for no trailing slashes in URLs

Support for subdomains

Use an AWS Profile (named credentials) to authenticate with AWS

CDN (CloudFront) and HTTPS/TLS support

This has saved me a huge amount of time; I hope it’s helpful to other people. Let me know what you think!