Skip to content

Instantly share code, notes, and snippets.

@initcron
Last active January 6, 2025 15:08
Show Gist options
  • Save initcron/bdcb75d3df92985edc43b0a5a4ed9d5c to your computer and use it in GitHub Desktop.
Save initcron/bdcb75d3df92985edc43b0a5a4ed9d5c to your computer and use it in GitHub Desktop.

Mini Project Spec: Host Your Resume on AWS S3

Introduction:

In this mini-project, you will learn how to use Amazon S3 to host your resume, creating a publicly accessible web-based version of your professional profile. This is a practical skill that can be applied in real-world scenarios, such as job applications or networking events.

Project Goal:

  • To host an HTML version of your resume on AWS S3.
  • To make this resume accessible via a public URL.

Why This is Important:

Instead of sharing PDF versions or static resumes, a web-based resume allows recruiters, network contacts, and anyone else to see a dynamic representation of your skills and experience. This can significantly enhance your online presence.

Steps:

1. Locate a Suitable HTML Resume Template:

  • Start by browsing through free and open-source HTML resume templates.
  • A good resource is Dev Snap 30+ Perfect HTML Resume Templates, which provides a variety of HTML and CSS templates.
  • Choose a template that fits your style and requirements.

An HTML Resume Template

2. Prepare Your Resume Template:

  • Download the selected HTML template's source code.
  • Customize the HTML file with your personal information, skills, and experience. This will include modifying details like name, contact information, skills sections etc.

3. Configure AWS S3 Bucket:

  • Navigate to the AWS S3 console and create a new S3 bucket.

* Select an appropriate name for the bucket. * **Note**: Bucket name should be globally unique i.e no other bucket with the same name exists anywhere on aws s3 * Ensure that the bucket is configured to allow public read access. To enable this, * Enable Access Control List and also disable the block public access
 <img src="https://i.imgur.com/aE7GkR9.png" alt="Bucket Creation Setup on AWS" width="400"/>
  • Note: Be mindful of security implications when making data public. If this project is for learning purpose only, this approach will work otherwise consider restricting this access to secure locations, IP or a whitelised user account..

4. Upload Your Resume to S3:

  • After creation navigate to the created bucket and Upload the file you downloaded in step-2 with file name 'index.html' or something on that line that suits you, the CSS, Javascript files (if available) along with images should also be available at root of S3 bucket directory level

    Empty bucket files and folders location at root
  • Select the all files that were uploaded , and click make public

5. Make Public Files from AWS Bucket:

  • Once the upload is complete, it will generate public URL. You will require a different process as we need to ensure files which have not explicitly been set up as public also gets exposed over web browser and so all dependent pages such as javascript, image css all be open. To do this in amazon aws s3 dashboard , click Select All Files check the box

    • Choose option : Make public using ACL Access permission setup
  • Copy any URL for these uploaded files e.g, index.html , but keep in mind a unique bucket naming convention and ensure ACLs is configured , or you might see following errors as the objects are not publicly exposed. No Such Bucket

    Note: If your page renders this XML error "NoSuchBucket", double-check you have a proper naming structure including lower cases, dashes instead of white space to give unique identity for your AWS Bucket. Then use the process defined in #5 steps above

6. Verify Your Resume Website:

  • Open the Public URL of index.html and ensure all dependent CSS , Javascript & Image is displayed on page to view proper functioning, without errors and render you content

Learning Objectives:

By the end of this project, you will be able to:

  • Understand the purpose and usefulness of cloud object storage (AWS S3).
  • Create an S3 bucket and configure its permissions.
  • Upload and manage files in an S3 bucket.
  • Make static content publicly accessible via an S3 bucket's URL.
  • Build a web-based personal resume using a downloaded HTML template.

Next Steps:

In the next segment, we will provide you the solution on how to host the resume template on AWS S3. However, before you view the solution, please attempt this mini-project on your own. If you do run into problems while attempting it, you can refer to the solution and understand the problem and where you can correct yourself.


Let me know if anything requires fixing. This time, everything including the screenshot, is properly displayed for you to cut and paste.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment