All checks were successful
docker / Docker – Build & Push (Packages) (push) Successful in 11s
1.8 KiB
1.8 KiB
jf-homepage
Portfolio & About-Seite für Jerrit (jf) — gebaut mit Vite, TypeScript, GSAP/ScrollTrigger und Lenis.
Stack
- Vite — Dev-Server & Build
- TypeScript — Typsicherheit
- GSAP + ScrollTrigger — Scroll-Animationen, Reveals, Skill-Bars
- Lenis — Smooth Scrolling
- Reines CSS (Custom Properties, kein Framework)
Features
- Animierter Hero (Intro-Timeline, Gradient-Background)
- Reveal-on-Scroll für alle Sektionen
- Skill-Bars mit Scroll-Trigger
- Custom Cursor + Scroll-Progress-Bar
- Fixe Nav mit Blur-on-Scroll
- Responsive (Desktop / Tablet / Mobile)
prefers-reduced-motionrespektiert
Struktur
jf-homepage/
├── index.html # Markup, Sektionen
├── src/
│ ├── style.css # komplettes Styling
│ └── main.ts # Animationen, Lenis, Cursor, Nav
├── package.json
└── tsconfig.json
Local dev
npm install
npm run dev # http://localhost:5173
Build
npm run build # tsc + vite build -> dist/
npm run preview # dist/ lokal serven
Deploy
Statisches dist/ — hostbar auf jedem Static-Host (z. B. Gitea Pages, Netlify, Cloudflare Pages, nginx).
Git / Gitea
- Remote:
https://git.jfritzsche.de/jf/jf-homepage.git(HTTPS + Token; SSH Port 22 ist von außen durch Cloudflare blockiert) - Branches:
main(prod),dev(laufend),feature/*,fix/* - Commits: Conventional Commits (
feat:,fix:,docs:,chore:) - CI/CD: Gitea Actions (
runs-on: ubuntu-latest) baut das Docker-Image und pusht es zu Gitea Packages (git.jfritzsche.de/jf/jf-homepage). Registry-Login via Repo-SecretREGISTRY_TOKEN.
ToDo / Ideen
- Echte Projekt-Cases statt Platzhalter
- Dark/Light-Toggle
- Gitea-Actions-Deploy zu Gitea Pages (optional)