feat(moritzgrafde): rewrite personal website with Vue 3, Vite, and Tailwind CSS

- Replace legacy Hugo static site generator and hugo-goa theme with a modern Vue 3 + Vite + TypeScript application
- Implement Clean Enterprise design system using Tailwind CSS with light/dark mode support
- Position website around Cloud Platform & Infrastructure Leadership (GCP & AWS central platforms, Kubernetes at scale, enterprise spin-off governance, and systems depth) without chronological resumes
- Add 6 comprehensive capability dossiers and verified credential badges (CKA, PSM II, M.Sc.)
- Implement interactive skill matrix with real-time text search and category filtering
- Add engineering philosophy section, contact channels with one-click email copying, and Impressum modal
- Configure multi-stage Dockerfile (Node builder to Nginx runtime) with custom gzip, caching, and security headers
- Update build scripts (Makefile, build.sh), .gitignore, and AGENTS.md documentation across the monorepo
This commit is contained in:
Moritz Graf
2026-09-26 20:37:53 +02:00
parent afb80bbba8
commit d2dac3470f
103 changed files with 3872 additions and 1924 deletions
+23 -8
View File
@@ -1,16 +1,31 @@
# website as docker image
# Moritz Graf Personal Website
Build container and push to registry
Personal executive portfolio and capabilities showcase for **Moritz Graf** (`https://moritzgraf.de`).
Built with **Vue 3**, **Vite**, **TypeScript**, and **Tailwind CSS**. Deployed via GitOps to private Kubernetes infrastructure.
## Development
```bash
build.sh
cat build.sh # to execute commands seperately
# Install dependencies
npm install
# Start development server
npm run dev
# Typecheck and build static production bundle to dist/
npm run build
```
Then ssh to the server and redeploy container:
## Production Build & Deploy
```bash
ssh moritzgraf.de
cd /home/docker/container/
docker-compose-fullupgrade moritzgrafde
# Build static site and container image
make build
# Push to private registry
make push
# Trigger rolling restart on Kubernetes
make deploy
```