feat: update portfolio projects
All checks were successful
Deploy Portfolio to VPS / deploy (push) Successful in 23s

This commit is contained in:
Chneemann 2026-10-05 11:53:19 +02:00
parent dcc077184c
commit 0a0b6ad43e
No known key found for this signature in database
7 changed files with 51 additions and 41 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

View file

@ -14,18 +14,37 @@ export default function Portfolio() {
// Static list of featured and secondary portfolio project items with translation keys
const PROJECTS = [
{
title: "DABubble",
type: tPortfolio("projects.dabubble.type"),
description: tPortfolio("projects.dabubble.description"),
image: "/assets/projects/dabubble.png",
title: "Waveform",
type: tPortfolio("projects.waveform.type"),
description: tPortfolio("projects.waveform.description"),
image: "/assets/projects/waveform.png",
tags: [
{ name: "Angular", featured: true },
{ name: "TypeScript", featured: true },
{ name: "Google Firebase", featured: false },
{ name: "Next.js", featured: true },
{ name: "React", featured: true },
{ name: "Tailwind CSS", featured: false },
{ name: "PostgreSQL", featured: false },
{ name: "Auth.js", featured: true },
],
isFeatured: true,
demoLink: "https://dabubble.andre-kempf.com/",
gitLink: "https://git.andre-kempf.com/Chneemann/dabubble",
demoLink: "https://waveform.andre-kempf.com/",
gitLink: "https://git.andre-kempf.com/Chneemann/waveform",
},
{
title: "Flowstate",
type: tPortfolio("projects.flowstate.type"),
description: tPortfolio("projects.flowstate.description"),
image: "/assets/projects/flowstate.png",
tags: [
{ name: "Next.js", featured: true },
{ name: "React", featured: true },
{ name: "Tailwind CSS", featured: false },
{ name: "PostgreSQL", featured: false },
{ name: "Drizzle ORM", featured: false },
{ name: "Auth.js", featured: true },
],
isFeatured: false,
demoLink: "https://flowstate.andre-kempf.com/",
gitLink: "https://git.andre-kempf.com/Chneemann/flowstate",
},
{
title: "Join",
@ -43,24 +62,6 @@ export default function Portfolio() {
frontendLink: "https://git.andre-kempf.com/Chneemann/join",
backendLink: "https://git.andre-kempf.com/Chneemann/join-api",
},
{
title: "Videoflix",
type: tPortfolio("projects.videoflix.type"),
description: tPortfolio("projects.videoflix.description"),
image: "/assets/projects/videoflix.png",
tags: [
{ name: "Angular (TS)", featured: true },
{ name: "Django REST", featured: true },
{ name: "Python", featured: false },
{ name: "PostgreSQL", featured: false },
],
isFeatured: false,
demoLink: "https://videoflix.andre-kempf.com/",
frontendLink:
"https://git.andre-kempf.com/Chneemann/videoflix/src/branch/main/frontend",
backendLink:
"https://git.andre-kempf.com/Chneemann/videoflix/src/branch/main/backend",
},
];
// Separate featured highlight from remaining secondary project cards
@ -253,6 +254,15 @@ export default function Portfolio() {
Backend
</Link>
)}
{project.gitLink && (
<Link
href={project.gitLink}
target="_blank"
className="text-slate-400 hover:text-white transition-colors"
>
Git Repo
</Link>
)}
</div>
</div>
</div>

View file

@ -40,17 +40,17 @@
"sectionSub": "Projekte",
"featuredBadge": "Ausgewähltes Projekt",
"projects": {
"dabubble": {
"type": "Web-Anwendung",
"description": "Eine Slack-Klon-App, die die Teamkommunikation und -zusammenarbeit durch eine intuitive Benutzeroberfläche, Echtzeit-Messaging und robuste Kanalorganisation revolutioniert."
"flowstate": {
"type": "Full-Stack-App",
"description": "Flowstate ist eine moderne, leistungsstarke Kanban- & Workflow-Webanwendung für nahtloses Produktivitätsmanagement. Entwickelt mit Next.js 16, React 19, PostgreSQL und Drizzle ORM bietet sie ein geschütztes Dashboard, flexible Server- und Board-Verwaltung sowie eine vollautomatisierte Docker-Deployment-Pipeline."
},
"waveform": {
"type": "Full-Stack-App",
"description": "Waveform ist eine moderne, performante Echtzeit-Chat-Anwendung für nahtlose Kommunikation. Entwickelt mit Next.js 16, React 19, PostgreSQL und Drizzle ORM bietet sie modulare Chat- und Serverstrukturen, Auth.js v5 Authentifizierung und eine automatisierte CI/CD-Deployment-Pipeline."
},
"join": {
"type": "Full-Stack-App",
"description": "Vom Kanban-System inspiriertes Task-Management. Erstelle und organisiere Aufgaben per Drag-and-Drop, weise Benutzer und Kategorien zu und sorge für effizientes Management."
},
"videoflix": {
"type": "Full-Stack-App",
"description": "Videoplattform zum Teilen und Entdecken von Videos. Lade Inhalte hoch, betrachte und streame sie in verschiedenen Qualitätsstufen – in einer benutzerfreundlichen Oberfläche."
}
}
},

View file

@ -41,17 +41,17 @@
"sectionSub": "Projects",
"featuredBadge": "Featured Project",
"projects": {
"dabubble": {
"type": "Web Application",
"description": "This App is a Slack Clone App. It revolutionizes team communication and collaboration with its intuitive interface, real-time messaging, and robust channel organization."
"flowstate": {
"type": "Full-Stack-App",
"description": "Flowstate is a modern, high-performance Kanban and workflow web application designed for effortless productivity management. Built with Next.js 16, React 19, PostgreSQL, and Drizzle ORM, it features a secure dashboard, flexible board management, and a fully automated Docker deployment pipeline."
},
"waveform": {
"type": "Full-Stack-App",
"description": "Waveform is a modern, high-performance real-time chat application designed for seamless communication. Built with Next.js 16, React 19, PostgreSQL, and Drizzle ORM, it features modular chat interfaces, secure Auth.js v5 authentication, and an automated CI/CD deployment pipeline."
},
"join": {
"type": "Full-Stack App",
"description": "Task manager inspired by the Kanban System. Create and organize tasks using drag and drop functions, assign users and categories to ensure efficient management."
},
"videoflix": {
"type": "Full-Stack App",
"description": "Video platform for sharing and discovering videos. Upload, view, and stream content in various quality levels, all within a user-friendly interface designed to enhance the video experience."
}
}
},