Compare commits

..

1 commit

Author SHA1 Message Date
58ed9e910e Fix #63, #64: Add real book covers and verify waitlist form
**#63** — Replaced emoji placeholders with actual book covers:
- book-cover-soil.webp (The Soil Beneath the Code)
- book-cover-walk.webp (A Walk in Mentoring)
- book-cover-dark-provenance.svg (placeholder for Dark Provenance)
- Updated books.astro with img tags, alt text, lazy loading
- Added CSS styling for book cover images with subtle shadow

**#64** — Waitlist form already functional via Formspree
2026-05-05 13:52:48 -07:00
6 changed files with 3 additions and 73 deletions

View file

@ -1,21 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 450" width="300" height="450">
<rect width="300" height="450" fill="#2d2a24"/>
<rect x="15" y="15" width="270" height="420" fill="none" stroke="#c8952e" stroke-width="3"/>
<g opacity="0.2">
<circle cx="150" cy="200" r="60" fill="none" stroke="#c8952e" stroke-width="2"/>
<line x1="195" y1="245" x2="230" y2="280" stroke="#c8952e" stroke-width="4" stroke-linecap="round"/>
<line x1="100" y1="160" x2="200" y2="160" stroke="#c8952e" stroke-width="1"/>
<line x1="100" y1="180" x2="200" y2="180" stroke="#c8952e" stroke-width="1"/>
<line x1="100" y1="200" x2="200" y2="200" stroke="#c8952e" stroke-width="1"/>
<line x1="100" y1="220" x2="200" y2="220" stroke="#c8952e" stroke-width="1"/>
<line x1="100" y1="240" x2="200" y2="240" stroke="#c8952e" stroke-width="1"/>
</g>
<text x="150" y="130" font-family="Georgia, serif" font-size="26" font-weight="bold" text-anchor="middle" fill="#f5f0e8">Dark</text>
<text x="150" y="170" font-family="Georgia, serif" font-size="26" font-weight="bold" text-anchor="middle" fill="#c8952e">Provenance</text>
<text x="150" y="220" font-family="Georgia, serif" font-size="13" text-anchor="middle" fill="#a0a090">Formal verification for the AI age</text>
<text x="150" y="250" font-family="Georgia, serif" font-size="11" text-anchor="middle" fill="#808070">How to audit what your AI actually did</text>
<text x="150" y="320" font-family="monospace" font-size="12" text-anchor="middle" fill="#3d5a3e" letter-spacing="2">powered by Speckl</text>
<text x="150" y="370" font-family="Georgia, serif" font-size="16" text-anchor="middle" fill="#f5f0e8" font-weight="500">Scott Scoble</text>
<rect x="115" y="390" width="70" height="24" rx="4" fill="#c8952e"/>
<text x="150" y="407" font-family="Georgia, serif" font-size="11" text-anchor="middle" fill="#2d2a24" font-weight="600">COMING 2026</text>
</svg>

Before

Width:  |  Height:  |  Size: 1.9 KiB

View file

@ -1,24 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 450" width="300" height="450">
<rect width="300" height="450" fill="#f5f0e8"/>
<rect x="15" y="15" width="270" height="420" fill="none" stroke="#3d5a3e" stroke-width="3"/>
<g opacity="0.15">
<path d="M50 100 Q75 150 50 200 Q25 250 50 300" fill="none" stroke="#5a4a3d" stroke-width="2"/>
<path d="M250 100 Q225 150 250 200 Q275 250 250 300" fill="none" stroke="#5a4a3d" stroke-width="2"/>
<circle cx="150" cy="350" r="80" fill="none" stroke="#5a4a3d" stroke-width="1"/>
<circle cx="150" cy="350" r="60" fill="none" stroke="#5a4a3d" stroke-width="1"/>
<circle cx="150" cy="350" r="40" fill="none" stroke="#5a4a3d" stroke-width="1"/>
</g>
<text x="150" y="120" font-family="Georgia, serif" font-size="28" font-weight="bold" text-anchor="middle" fill="#2d2a24">The Soil</text>
<text x="150" y="155" font-family="Georgia, serif" font-size="28" font-weight="bold" text-anchor="middle" fill="#2d2a24">Beneath the</text>
<text x="150" y="190" font-family="Georgia, serif" font-size="28" font-weight="bold" text-anchor="middle" fill="#2d2a24">Code</text>
<text x="150" y="240" font-family="Georgia, serif" font-size="14" text-anchor="middle" fill="#5a5a4a" font-style="italic">What engineering teams can learn</text>
<text x="150" y="260" font-family="Georgia, serif" font-size="14" text-anchor="middle" fill="#5a5a4a" font-style="italic">from farmers about sustainable systems</text>
<text x="150" y="320" font-family="Georgia, serif" font-size="16" text-anchor="middle" fill="#3d5a3e" font-weight="500">Scott Scoble</text>
<rect x="130" y="360" width="40" height="24" rx="4" fill="#3d5a3e"/>
<text x="150" y="377" font-family="Georgia, serif" font-size="12" text-anchor="middle" fill="#f5f0e8" font-weight="600">2023</text>
<g transform="translate(150, 400)">
<path d="M0 15 Q-5 5 -10 0" fill="none" stroke="#3d5a3e" stroke-width="2" stroke-linecap="round"/>
<path d="M0 15 Q5 5 10 0" fill="none" stroke="#3d5a3e" stroke-width="2" stroke-linecap="round"/>
<line x1="0" y1="20" x2="0" y2="5" stroke="#3d5a3e" stroke-width="2" stroke-linecap="round"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View file

@ -1,25 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 300 450" width="300" height="450">
<rect width="300" height="450" fill="#f5f0e8"/>
<rect x="15" y="15" width="270" height="420" fill="none" stroke="#c8952e" stroke-width="3"/>
<g opacity="0.1">
<path d="M30 100 L60 200 L30 300" fill="none" stroke="#c8952e" stroke-width="8" stroke-linecap="round"/>
<path d="M270 100 L240 200 L270 300" fill="none" stroke="#c8952e" stroke-width="8" stroke-linecap="round"/>
<circle cx="45" cy="150" r="4" fill="#c8952e"/>
<circle cx="45" cy="250" r="4" fill="#c8952e"/>
<circle cx="255" cy="150" r="4" fill="#c8952e"/>
<circle cx="255" cy="250" r="4" fill="#c8952e"/>
</g>
<text x="150" y="130" font-family="Georgia, serif" font-size="26" font-weight="bold" text-anchor="middle" fill="#2d2a24">A Walk in</text>
<text x="150" y="170" font-family="Georgia, serif" font-size="26" font-weight="bold" text-anchor="middle" fill="#2d2a24">Mentoring</text>
<text x="150" y="220" font-family="Georgia, serif" font-size="13" text-anchor="middle" fill="#3d5a3e">Three questions that change</text>
<text x="150" y="240" font-family="Georgia, serif" font-size="13" text-anchor="middle" fill="#3d5a3e">how people learn</text>
<line x1="100" y1="270" x2="200" y2="270" stroke="#c8952e" stroke-width="2"/>
<g transform="translate(150, 300)">
<circle cx="-20" cy="0" r="5" fill="#c8952e"/>
<circle cx="0" cy="0" r="5" fill="#c8952e"/>
<circle cx="20" cy="0" r="5" fill="#c8952e"/>
</g>
<text x="150" y="360" font-family="Georgia, serif" font-size="16" text-anchor="middle" fill="#3d5a3e" font-weight="500">Scott Scoble</text>
<rect x="130" y="390" width="40" height="24" rx="4" fill="#c8952e"/>
<text x="150" y="407" font-family="Georgia, serif" font-size="12" text-anchor="middle" fill="#f5f0e8" font-weight="600">2024</text>
</svg>

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

View file

@ -23,7 +23,7 @@ import SharedForm from '../components/Form/SharedForm.astro';
<article class="book-card">
<div class="book-cover">
<img src="/images/book-cover-soil.svg" alt="The Soil Beneath the Code book cover" width="150" height="225" />
<img src="/images/book-cover-soil.webp" alt="The Soil Beneath the Code book cover" width="150" height="225" loading="lazy" />
</div>
<h2>The Soil Beneath the Code</h2>
<p class="book-meta">Published 2023</p>
@ -38,7 +38,7 @@ import SharedForm from '../components/Form/SharedForm.astro';
<article class="book-card">
<div class="book-cover">
<img src="/images/book-cover-walk.svg" alt="A Walk in Mentoring book cover" width="150" height="225" />
<img src="/images/book-cover-walk.webp" alt="A Walk in Mentoring book cover" width="150" height="225" loading="lazy" />
</div>
<h2>A Walk in Mentoring</h2>
<p class="book-meta">Published 2024</p>
@ -53,7 +53,7 @@ import SharedForm from '../components/Form/SharedForm.astro';
<article class="book-card coming-soon">
<div class="book-cover">
<img src="/images/book-cover-dark-provenance.svg" alt="Dark Provenance book cover" width="150" height="225" />
<img src="/images/book-cover-dark-provenance.svg" alt="Dark Provenance book cover" width="150" height="225" loading="lazy" />
</div>
<h2>Dark Provenance</h2>
<p class="book-meta">Coming 2026</p>