From 567283af64aa0cd294e4fc011c4f7f131269c3f8 Mon Sep 17 00:00:00 2001 From: jyswee Date: Thu, 23 Jul 2026 22:10:02 +0000 Subject: [PATCH] Seed: blog template (17 files) --- src/pages/Author.tsx | 150 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 150 insertions(+) create mode 100644 src/pages/Author.tsx diff --git a/src/pages/Author.tsx b/src/pages/Author.tsx new file mode 100644 index 0000000..4fecb7f --- /dev/null +++ b/src/pages/Author.tsx @@ -0,0 +1,150 @@ +import { Link, useParams } from "react-router-dom"; +import { Button } from "@/components/ui/button"; +import { Card, CardContent } from "@/components/ui/card"; +import { Badge } from "@/components/ui/badge"; +import { Avatar, AvatarFallback } from "@/components/ui/avatar"; +import { Separator } from "@/components/ui/separator"; +import { + ArrowRight, Twitter, Github, Linkedin, Globe, Clock, + FileText, Users, CalendarDays, ChevronLeft, ChevronRight +} from "lucide-react"; +import Header from "@/components/Header"; +import Footer from "@/components/Footer"; + +const categoryColors: Record = { + Technology: "bg-emerald-100 text-emerald-700", + Design: "bg-amber-100 text-amber-700", + Business: "bg-stone-200 text-stone-700", + Lifestyle: "bg-teal-100 text-teal-700", +}; + +const authorArticles = [ + { id: 1, title: "The Future of Web Development: What Comes After the JavaScript Era", category: "Technology", date: "Mar 15, 2025", gradient: "from-emerald-400 to-teal-500", slug: "future-of-web-development" }, + { id: 2, title: "Understanding React Server Components in Production", category: "Technology", date: "Mar 12, 2025", gradient: "from-amber-200 to-orange-300", slug: "react-server-components" }, + { id: 3, title: "Edge Functions: A Practical Introduction", category: "Technology", date: "Mar 1, 2025", gradient: "from-stone-200 to-stone-400", slug: "edge-functions-intro" }, + { id: 4, title: "Design Principles Every Developer Should Know", category: "Design", date: "Feb 20, 2025", gradient: "from-amber-100 to-amber-300", slug: "design-for-developers" }, + { id: 5, title: "Why Rust is the Future of WebAssembly", category: "Technology", date: "Feb 10, 2025", gradient: "from-emerald-100 to-emerald-300", slug: "rust-for-web" }, + { id: 6, title: "Navigating Your Career as a Senior Developer", category: "Lifestyle", date: "Jan 28, 2025", gradient: "from-stone-100 to-amber-200", slug: "dev-career-growth" }, +]; + +export default function AuthorPage() { + const { slug } = useParams(); + + return ( +
+
+ + {/* Author Hero */} +
+
+ + SC + +

Sarah Chen

+

+ Senior software engineer and technical writer specializing in frontend architecture. Building for the web for over 10 years, exploring the intersection of developer experience and user experience. Previously at Stripe, Vercel, and Mozilla. +

+ + {/* Social Links */} +
+ + + + +
+ + {/* Stats */} +
+
+
+ + 42 +
+

Articles

+
+ +
+
+ + 12K +
+

Readers

+
+ +
+
+ + 2024 +
+

Member since

+
+
+
+
+ + + + {/* Author Articles */} +
+
+

Articles by Sarah Chen

+
+ {authorArticles.map((article) => ( + + +
+
+
+
+ + + {article.category} + +

+ {article.title} +

+
+ {article.date} + · + 5 min read +
+
+ + + ))} +
+ + {/* Pagination */} +
+ + {[1, 2, 3].map((page) => ( + + ))} + +
+
+
+ +
+ ); +}