e02fe18bc7 | 1 year ago | |
---|---|---|
.github/workflows | 1 year ago | |
.yarn/releases | 1 year ago | |
app | 1 year ago | |
public | 1 year ago | |
.dockerignore | 1 year ago | |
.eslintrc.json | 2 years ago | |
.gitignore | 1 year ago | |
.yarnrc.yml | 1 year ago | |
CONTRIBUTING.md | 2 years ago | |
Dockerfile | 1 year ago | |
LICENSE | 2 years ago | |
README.md | 1 year ago | |
flake.lock | 1 year ago | |
flake.nix | 1 year ago | |
next.config.js | 1 year ago | |
package.json | 1 year ago | |
postcss.config.js | 2 years ago | |
tailwind.config.js | 1 year ago | |
tsconfig.json | 1 year ago | |
yarn.lock | 1 year ago |
README.md
My Personal Website
✨ https://goudham.com ✨
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 18
- 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
-
Install the required dependencies via
yarn
yarn install
-
Run the development server
yarn dev
If you're a containers type of person, you can instead run the server via the provided Dockerfile:
docker build -t website . docker run --rm -it -p 3000:3000 --name website website:latest
Deployment
This is mostly for me when I revisit this godforsaken project in 7 months having forgotten everything :P
This repository has a publish.yml action which automatically builds the Dockerfile and pushes to Docker Hub with the latest updates. This image is then automatically retrieved by Watchtower on my server which automatically replaces the production docker container, therefore deploying the new updates to production. (In the future, I may switch this workflow to only use Portainer.)
Manual Commands
docker tag website:latest sgoudham/website:latest
docker push sgoudham/website:latest
Contributing
See CONTRIBUTING.md