PORTFOLIOBACH
Kein Baukasten. Keine Templates.
100% Engineered.
Chapter I: The Origin
Warum ich das Rad neu erfunden habe.
Das "Black Box" Problem
Natürlich hätte ich WordPress oder Wix nehmen können...
Aber im Studium lerne ich Algorithmen...
# Option A: The Easy Way (Rejected)
# Option B: The Engineering Way
[STATUS] Bloatware removed.
[READY] Starting development...
Bundle Size Comparison
Bloatware vs. Handwerk
Fertige Templates laden oft Megabytes...
Der Student-Ansatz: ...
Theorie trifft Praxis
In der Hochschule lernen wir Java und OOP...
Das Portfolio ist mein "Labor"...
Chapter II: The Architecture
Vom statischen HTML zur dynamischen Engine.
Statisch vs. Dynamisch
Zu Beginn (v1.0) bestand dieses Portfolio...
Die Lösung (v2.2)...
- Früher: Copy & Paste von Code-Blöcken.
- Heute: Eine zentrale Daten-Quelle.
Struktur-Vergleich
about.html
contact.html
+ data.json
Die "Rendering Engine"
Ich wollte verstehen, wie moderne Frameworks...
Das System basiert auf...
- Data Layer:...
- Logic Layer:...
- View Layer:...
Das ermöglicht mir...
Logic-Layer Snippet
Chapter III: Invisible Tech
Features, die man fühlt, aber nicht sieht.
Async i18n Engine
Statt 500KB Libraries, dynamisches fetch() in Vanilla TypeScript.
- Attribute Mapping:...
- Persistence:...
- Fade-Transition:...
localStorage..."
},
"meta_c3_li_2":
"Persistence..."
}
};
Logic Pipeline Visualization
Smart DOM Injection
Die project-renderer.js agiert wie...
Ein besonderes Highlight...
Performance First
Ein Portfolio muss schnell sein...
Ressourcen-Effizienz
Scroll-Events feuern hunderte Male...
visible in Viewport
⬆️ Live Demo...
Modern CSS & GPU
CSS ist mehr als nur Farbe...
Hardware Acceleration
transform: translate3d(0,0,0);
will-change: transform;
}
Chapter IV: DevOps & Workflow
Code ist nur so gut wie der Prozess dahinter.
Git History (Main)
Clean Commits
Ein Portfolio wächst organisch...
- Semantic Commits:...
- Branching:...
- Safety:...
Domain Driven Design
Anfangs lagen alle Bilder...
Im Zuge des Refactorings...
Refactored File Structure
Chapter V: Infrastructure
Der Weg zur eigenen Identität (yusefbach.de).
Vom Hobby zum Pro
Anfangs lief die Seite...
Die Herausforderung...
GitHub Pages DNS Configuration
The "Persistence Issue"
Ein klassischer Fallstrick...
Chapter VI: The AI Brain
A Zero-Dependency RAG Chat-Twin.
Python Serverless
Die Google Gemini API läuft als isolierter Microservice auf Vercel (FastAPI).
System Context Injection
Eine markdown-basierte Datenbank ('yusef_brain.md') orchestriert das LLM.
Vanilla Bot UI
Das Frontend kommuniziert asynchron via privater Fetch-Pipeline.
Context Safety
CORS Header und Strict Model-Directives verhindern Missbrauch.
RAG_PIPELINE.flow
(Glassmorphism)
(Context JSON)
Chapter VII: Future Roadmap
Code is never finished. The journey continues.