Skip to content

sgoudham/website

Repository files navigation

My Personal Website

Believe it or not, this is what I'd consider to be my first "project" involving modern front-end technologies. I don't have much experience with the tech stack that I've chosen here or even front-end development in general.

I hope this maybe, just maybe inspires someone else to just throw themselves into a project and have some fun along the way :D

Also, technically, this is a work-in-progress but shh...

Dependencies

  • NodeJS 20
  • Yarn
  • (Optional) Container Orchestration Tool (e.g. Docker)

If you're a filthy Nix/NixOS user, you can take advantage of the flake.nix by running nix develop to automatically get a shell with all the required dependencies.

Building

  1. Install the required dependencies via yarn

    yarn install
  2. Run the development server

    yarn dev

    If you're a containers type of person, you can instead run the server via the provided Dockerfile:

    yarn docker:preview # or yarn docker:release

Deployment

This is mostly for me when I revisit this godforsaken project in 7 months having forgotten everything :P

This repository has 2 workflow files:

  • preview.yml - This workflow is triggered on every pushed commit to the main branch.
    • The website is built and deployed to docker hub as sgoudham/website:preview
    • My server automatically pulls the latest image from the preview tag and deploys it under https://preview.goudham.com.
  • release.yml - This workflow is triggered on any pushed tag.
    • The website is built and deployed to docker hub as sgoudham/website:<tag>.
    • My server automatically pulls the latest tag <tag> and deploys it under https://goudham.com.

Contributing

See CONTRIBUTING.md

License

MIT