@@ -6,8 +6,7 @@ import { ArticleSocials } from '@/components/ArticleSocials';
66import { Prose } from ' @/components/Prose' ;
77import { formatTimestamp } from ' @/lib/formatDate' ;
88import { AUTHORS , CATEGORIES } from ' @/lib/article' ;
9- import { AuthorAvatar } from ' @/components/AuthorAvatar' ;
10- import { Icon , faArrowLeft , faArrowRight , faBluesky , faGithub , faXTwitter } from ' @rivet-gg/icons' ;
9+ import { Icon , faArrowLeft , faArrowRight } from ' @rivet-gg/icons' ;
1110import * as mdxComponents from ' @/components/mdx' ;
1211
1312type AuthorInfo = {
@@ -62,8 +61,6 @@ const otherArticles = filteredOtherPosts.map((post) => {
6261 };
6362});
6463
65- const authorLink = author .socials ?.twitter || author .url || author .socials ?.github ;
66-
6764// BreadcrumbList schema
6865const breadcrumbSchema = {
6966 " @context" : " https://schema.org" ,
@@ -103,51 +100,17 @@ const breadcrumbSchema = {
103100
104101 <!-- Header -->
105102 <header class =" mb-12 mt-8" >
106- <h1 class =" text-4xl font-semibold leading-[1.08] tracking-tight text-white [text-wrap:balance] md:text-[3.25rem]" >
103+ <time datetime ={ entry .data .published .toISOString ()} class =" text-sm font-medium text-zinc-500" >
104+ { formatTimestamp (entry .data .published )}
105+ </time >
106+ <h1 class =" mt-2 text-4xl font-semibold leading-[1.08] tracking-tight text-white [text-wrap:balance] md:text-[3.25rem]" >
107107 { title }
108108 </h1 >
109109 { description && (
110110 <p class = " mt-5 text-lg leading-relaxed text-zinc-400 [text-wrap:pretty] md:text-xl" >
111111 { description }
112112 </p >
113113 )}
114-
115- <div class =" mt-8 flex flex-wrap items-center gap-x-4 gap-y-3 border-t border-white/10 pt-6" >
116- <AuthorAvatar className =" size-10 shrink-0" name ={ author .name } avatarSrc ={ author .avatar .src } client:load />
117- <div class =" flex flex-col" >
118- <div class =" flex items-center gap-2" >
119- { authorLink ? (
120- <a href = { authorLink } target = " _blank" rel = " noopener noreferrer" class = " text-sm font-semibold text-white hover:text-accent transition-colors" >
121- { author .name }
122- </a >
123- ) : (
124- <span class = " text-sm font-semibold text-white" >{ author .name } </span >
125- )}
126- <div class =" flex items-center gap-2 text-zinc-500" >
127- { (author .socials ?.twitter || author .url ) && (
128- <a href = { author .socials ?.twitter || author .url } target = " _blank" rel = " noopener noreferrer" class = " hover:text-white transition-colors" >
129- <Icon icon = { faXTwitter } className = " h-3.5 w-auto" />
130- </a >
131- )}
132- { author .socials ?.bluesky && (
133- <a href = { author .socials .bluesky } target = " _blank" rel = " noopener noreferrer" class = " hover:text-white transition-colors" >
134- <Icon icon = { faBluesky } className = " h-3.5 w-auto" />
135- </a >
136- )}
137- { author .socials ?.github && (
138- <a href = { author .socials .github } target = " _blank" rel = " noopener noreferrer" class = " hover:text-white transition-colors" >
139- <Icon icon = { faGithub } className = " h-3.5 w-auto" />
140- </a >
141- )}
142- </div >
143- </div >
144- <p class =" text-xs text-zinc-500" >
145- { author .role }
146- <span class =" px-1.5 text-zinc-700" >·</span >
147- <time datetime ={ entry .data .published .toISOString ()} >{ formatTimestamp (entry .data .published )} </time >
148- </p >
149- </div >
150- </div >
151114 </header >
152115
153116 { image && (
0 commit comments