Add a prominent link to the full portfolio
Deploy to GitHub Pages / build (push) Canceled after 0s
Deploy to GitHub Pages / deploy (push) Canceled after 0s

The top bar's accent button becomes Portfolio (Email stays in the hero and
the contact band), the hero gets a Full portfolio button, and the project
list ends with a large block linking to it. The link points at Gitea's list
of repos with the portfolio topic; the sync supplies the count and the
resume file can override the target and label. Also eases the display
weight and tracking of the name in the dark theme.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XtcZtnG4GQA1d6mW5PNrS9
This commit is contained in:
Emil
2026-09-20 22:58:37 +03:00
co-authored by Claude Sonnet 5
parent 15d36d6437
commit 7471d65f54
10 changed files with 115 additions and 18 deletions
+5 -3
View File
@@ -1,12 +1,13 @@
'use client'
import { useScrolled } from '@/lib/useScroll'
import type { Portfolio } from '@/lib/types'
import ThemeToggle from './ThemeToggle'
import styles from './topbar.module.css'
type Props = { name: string; mailHref: string; showProjects: boolean }
type Props = { name: string; portfolio: Portfolio; showProjects: boolean }
export default function TopBar({ name, mailHref, showProjects }: Readonly<Props>) {
export default function TopBar({ name, portfolio, showProjects }: Readonly<Props>) {
const scrolled = useScrolled()
return (
<header className={`${styles.bar} ${scrolled ? styles.solid : ''}`}>
@@ -17,9 +18,10 @@ export default function TopBar({ name, mailHref, showProjects }: Readonly<Props>
<a href="#skills">Skills</a>
<a href="#experience">Experience</a>
<a href="#education">Education</a>
<a href="#contact">Contact</a>
</nav>
<ThemeToggle />
<a className={styles.mail} href={mailHref}>Email me</a>
<a className={styles.cta} href={portfolio.href} target="_blank" rel="noreferrer">{portfolio.label ?? 'Portfolio'}</a>
</div>
</header>
)