Skip to content

Git repository for Joshua Yu's personal webpage. Hi!

License

Notifications You must be signed in to change notification settings

joshuajyu/joshuajyu.com

Repository files navigation

Hello!

Welcome 1

This is the GitHub repository for my personal webpage. It started off as just a static GitHub pages deployment with a little bit of HTML and CSS, but is now a Next.js app. The development of this website is essentially my excuse to spend time learning about the latest in web development.

Deployment 2

The application is fully Docker-ized with an nginx reverse proxy in front of it, secured with Let's Encrypt. These (the Next.js app, reverse proxy, and nginx-letsencrypt) containers are orchestrated together with Docker Compose.

I use Cloudflare as a DNS provider and domain name registry, and I also use their proxy service for DDoS protection.

The entire web application is hosted on a Amazon EC2 t4g.nano instance running Debian, which costs around $2 CAD a month.

Changelog 3

Date Modified Description
Jun 6 2024 Created this repository. Hello World!
Jun 8 2024 Updated index.html
Sep 15 2024 Updated index.html, CSS overhaul, general improvements
Sep 21 2024 Updated index.html, CSS adjustments, added boilerplates
Oct 3 2024 Added contact info and home page
Dec 21 2024 Ported application to Next.js
Tomorrow Who knows?

Technologies Used 4

These are some of the more important technologies I used to make/deploy the website.

Technologies Usage
pnpm Package manager
Next.js w/ TypeScript React-based full-stack framework which the website is built in
Tailwind CSS CSS framework/preprocessor
shadcn/ui React UI library based on Radix UI
Cloudflare DNS provider and domain registry; proxy for DDOS protection
Amazon EC2 Amazon's elastic cloud compute to host web server
Docker Containerization platform
Docker Compose Multicontainer support
nginx-proxy Docker container to automate nginx reverse proxy
acme-companion Docker container to automate creation/renewal of Let's Encrypt certificates
Let's Encrypt Certificate authority for TLS certificates
favicon.io Generate favicons

Resources I Used 5

Outside of the documentation for the things listed above, I found these resources helpful:

Resource Description
MDN Web Docs The best.
Stack Overflow Good for any questions I had.

Footnotes

Footnotes

  1. This section last updated Dec 21 2024.

  2. This section last updated Dec 21 2024.

  3. This section last updated Dec 21 2024.

  4. This section last updated Dec 21 2024.

  5. This section last updated Dec 21 2024.

About

Git repository for Joshua Yu's personal webpage. Hi!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published