More font tweaks

This commit is contained in:
Ian Keane 2026-08-27 12:55:55 -04:00
parent 230bc5a002
commit 6e8d7bc106
4 changed files with 83 additions and 50 deletions

View file

@ -18,8 +18,8 @@
;; ─── Individual cards (all become flat children of .columns) ──────────────────
;; Project card — detail bullets revealed on hover (desktop) or click (mobile)
(define (render-project proj)
;; Work-experience project card — bullet summary + hover-reveal detail bullets
(define (render-work-project proj)
`(div (@ (class "project-card")
(onclick "this.classList.toggle('open')"))
(div (@ (class "project-header"))
@ -31,6 +31,27 @@
,(bullets (field proj 'detail-bullets)))
,(tech-list (field proj 'technologies))))
;; Hobby/personal project card — sentence summary + hover-reveal links
(define (render-project proj)
(let* ((links (field proj 'detail-links))
(has-links (and (pair? links) (> (length links) 0))))
`(div (@ (class "project-card")
,@(if has-links '((onclick "this.classList.toggle('open')")) '()))
(div (@ (class "project-header"))
(span (@ (class "project-name")) ,(field proj 'name))
,(date-range (field proj 'date-start) (field proj 'date-end)))
(p (@ (class "project-summary")) ,(field proj 'summary))
,(if has-links
`(div (@ (class "project-details"))
(ul ,@(map (lambda (link)
`(li (a (@ (href ,(cdr link))
(target "_blank")
(rel "noopener"))
,(car link))))
links)))
'(span))
,(tech-list (field proj 'technologies)))))
;; Title card: blurb only, no projects nested inside.
;; Projects are emitted as siblings after the title card.
(define (render-title-card tc)
@ -43,11 +64,11 @@
(p (@ (class "title-blurb"))
,(string-join (field tc 'blurb) " "))))
;; Emit a title card followed by its project cards as a flat list of siblings
;; Emit a title card followed by its work-project cards as a flat list of siblings
(define (render-title-flat tc)
(append
(list (render-title-card tc))
(map render-project (field tc 'projects))))
(map render-work-project (field tc 'projects))))
(define (render-education edu)
`(div (@ (class "education-card")