feat(ui): add /cv route, site-wide lowercase, no-cookies footer
reproduces the legacy cv (previously at grenade.github.io/cv) as a react-router /cv route, fetched at runtime from the same gist. moves the lowercase aesthetic from per-element overrides to a single body- level rule so a future toggle can flip it from one place. adds a small site-wide footer noting why no cookie consent banner is shown. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
22
ui/src/components/cv/CvHeader.tsx
Normal file
22
ui/src/components/cv/CvHeader.tsx
Normal file
@@ -0,0 +1,22 @@
|
||||
import { Link } from 'react-router-dom';
|
||||
import Image from 'react-bootstrap/Image';
|
||||
import { CV_PHOTO_URL } from '../../api/cv';
|
||||
|
||||
export function CvHeader() {
|
||||
return (
|
||||
<div className="cv-header d-flex flex-column flex-md-row align-items-md-center gap-3 mb-4">
|
||||
<Image
|
||||
src={CV_PHOTO_URL}
|
||||
alt="rob"
|
||||
roundedCircle
|
||||
className="cv-photo"
|
||||
/>
|
||||
<div className="flex-grow-1">
|
||||
<h1 className="mb-1">curriculum vitae</h1>
|
||||
<Link to="/" className="hot-pink">
|
||||
← timeline
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user