Frequently-asked Questions

What is AWS?

We can think of AWS similarly to an Integrated Development Environment (IDE) -- it's a suite of online services designed to do everything from register and host our website, add technical functionality, and even perform tests before we publish our pages for a wider audience. Because of AWS' centralized design, its products/services are designed to natively interface with one another -- saving us the time and effort would come with trying to unify services ourselves from a dozen different sources.

Does AWS replace GitHub, our IDE, or use of Claude Code?

No, each of these services are still crucial for us to continue developing our website on our own -- and using these services locally means that we can make and view changes almost instantly (and, without incurring a charge for uptime). Crucially, AWS will act as our website's host -- providing several products that will store our production-ready data and display on the internet.

How much does it cost to use AWS for a website?

Different AWS products will have different costs, as well as different pricing models based on how you use them. Using Route 53 to register a domain for a year will probably cost $10-20, while hosting your website and displaying your content to others starts in fractions of a penny per use. At our scale, AWS will be especially affordable.

AWS Products, explained

Simple Storage Service (S3)

Across AWS, files of our data are stored as “objects” in larger containers called “buckets” -- and S3 is the virtual location where this storage happens. Not only do we store our own data related to our website here, but we'll also store data that our users generate as well (such as emails, submission forms, etc.).

S3 is especially useful because it standardizes the location and format of the objects we store, making it simple for other parts of AWS to reference and use them for things like archival, analytics, and testing.

Click here to start our beginner's guide to S3!

Lambda

Lambda computes and hands off technical interactions between our website and external AWS services -- such as sending an email when a user fills in a field and presses a button, or uploading our files as objects to the right bucket in S3. Lambda will handle these interactions, called requests, automatically and charge us according to the scale of our usage.

Additionally, Lambda can account for much greater usage/demand as we scale up our website, without us needing to create an entirely new infrastructure ourselves. This means that we can comfortably use AWS at a small scale without worrying about the technical debt we might incur in a more successful near future.

Cloudfront

Cloudfront is a content delivery network (CDN) that helps alleviate the strain put on websites being accessed from across the world -- it uses something called an “edge location” which will store and deliver our page's data to the user as close to them as possible. Say our website is hosted from the US East server: for a user based in Japan, Cloudfront would push and hold a copy of our data to the Tokyo server -- decreasing the technical strain that would come from trying to only use the US East server.

Route 53

Route 53 is a domain name system (DNS) that will take a link that we can read (such as aibatteriesincluded.com) and translate it into an IP address that routes directly to where our website is hosted. We'll use Route 53 to register and manage a domain name of our choosing.

Simple Email Service (SES)

SES is a product we can use to add email/communications functionality to our webpage. We can use SES to send weekly newsletters, create sign-up sheets for our users to schedule meetings, and more. Importantly, the objects (data) generated from these interactions will be stored in S3 -- where we can make further analysis or changes according to our needs.

Identity and Access Management (IAM)

IAM is the security services that manages who has access to your data as it's stored in the AWS cloud. We'll use IAM to manage person-by-person permissions of who can make changes to our stuff, but also to oversee which parts of our IDE can make changes on our behalf. This will be especially important for Claude Code, which can interface directly with our local IDE and the AWS suite if properly integrated in IAM.

Check out our short lesson to understand how our IDE, GitHub, and AWS each fit in to the scope of our project.