From 33a0e018def36d6b5f26cefb0434064b33fb50fb Mon Sep 17 00:00:00 2001 From: schererleander Date: Sun, 28 Dec 2025 21:45:04 +0100 Subject: feat: add image/video preview of projects --- components/projects-grid.tsx | 38 ++++++++++++++++++++++++++----- public/images/authentication-preview.png | Bin 0 -> 98037 bytes public/videos/boilerplate-preview.mp4 | Bin 0 -> 166745 bytes public/videos/spaceinvaders-preview.mp4 | Bin 0 -> 282733 bytes 4 files changed, 32 insertions(+), 6 deletions(-) create mode 100644 public/images/authentication-preview.png create mode 100644 public/videos/boilerplate-preview.mp4 create mode 100644 public/videos/spaceinvaders-preview.mp4 diff --git a/components/projects-grid.tsx b/components/projects-grid.tsx index 9ccb0fb..52ef95a 100644 --- a/components/projects-grid.tsx +++ b/components/projects-grid.tsx @@ -1,10 +1,13 @@ import { Card, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"; import Link from "next/link"; +import Image from "next/image"; interface Project { title: string; description: string; githubUrl: string; + videoSrc?: string; + imageSrc?: string; } const projects: Project[] = [ @@ -12,20 +15,23 @@ const projects: Project[] = [ title: "Boilerplate", description: "A comprehensive starter template for modern web development projects.", githubUrl: "https://github.com/schererleander/boilerplate", + videoSrc: "/videos/boilerplate-preview.mp4", }, { - title: "Quiz Website", - description: "An interactive quiz platform built to test your knowledge.", - githubUrl: "https://github.com/schererleander/quiz", + title: "Authentication", + description: "Simple authentication system built using Express.js.", + githubUrl: "https://github.com/schererleander/authentication", + imageSrc: "/images/authentication-preview.png" }, { title: "Space Invaders", - description: "A classic arcade game clone recreated with modern web technologies.", + description: "Space Invaders clone written in Python using Pygame for an old-school project.", githubUrl: "https://github.com/schererleander/spaceinvaders", + videoSrc: "/videos/spaceinvaders-preview.mp4", }, { title: "Specula", - description: "A mirror project or reflection tool (Description inferred from name).", + description: "A minimal TUI tool written in Go to view file metadata and description.", githubUrl: "https://github.com/schererleander/specula", }, ]; @@ -37,7 +43,27 @@ export function ProjectsGrid() { {projects.map((project) => ( -
+ {project.videoSrc ? ( +