chore: small updates
3bfb322e
4 file(s) · +14 −5
| 1 | 1 | --- |
|
| 2 | 2 | const year = new Date().getFullYear(); |
|
| 3 | + | import Image from "astro/components/Image.astro"; |
|
| 3 | 4 | --- |
|
| 4 | 5 | ||
| 5 | 6 | <footer |
|
| 6 | - | class="mt-auto flex w-full flex-col items-center justify-center gap-y-2 pt-20 pb-4 text-center align-top text-gray-500 sm:flex-row sm:justify-between sm:text-xs" |
|
| 7 | + | class="mt-auto flex w-full flex-col items-center justify-center gap-y-4 pt-20 pb-4 text-center align-top text-gray-500 sm:flex-row sm:justify-between sm:text-xs" |
|
| 7 | 8 | > |
|
| 8 | 9 | <div class="mr-0 sm:mr-4"> |
|
| 9 | 10 | Copyright © {year} |
|
| 10 | 11 | Steve Simkins |
|
| 11 | 12 | </div> |
|
| 13 | + | <a href="https://github.com/stevedylandev/stevedylan.dev">Source Code</a> |
|
| 14 | + | <a href="https://blog.kagi.com/small-web-updates"> |
|
| 15 | + | <Image inferSize={true} src="https://kagifeedback.org/assets/files/2025-11-27/1764250950-635837-80x15-2.png" alt="kagi small web"/> |
|
| 16 | + | </a> |
|
| 12 | 17 | <div class="googleballs-trigger flex items-center gap-1" role="button" tabindex="0" aria-label="Easter egg"> |
|
| 13 | 18 | <span style="background:#4285F4;width:6px;height:6px;border-radius:50%;display:inline-block;"></span> |
|
| 14 | 19 | <span style="background:#EA4335;width:6px;height:6px;border-radius:50%;display:inline-block;"></span> |
|
| 15 | 20 | <span style="background:#FBBC05;width:6px;height:6px;border-radius:50%;display:inline-block;"></span> |
|
| 16 | 21 | <span style="background:#34A853;width:6px;height:6px;border-radius:50%;display:inline-block;"></span> |
|
| 17 | 22 | </div> |
|
| 18 | - | <a href="https://github.com/stevedylandev/stevedylan.dev">Source Code</a> |
|
| 19 | 23 | </footer> |
|
| 20 | 24 | ||
| 21 | 25 | <script> |
| 1 | 1 | --- |
|
| 2 | - | const { content } = Astro.props; |
|
| 2 | + | const { content, index } = Astro.props; |
|
| 3 | 3 | import { Image } from "astro:assets"; |
|
| 4 | 4 | --- |
|
| 5 | 5 | ||
| 8 | 8 | class="flex max-w-[500px] cursor-pointer flex-col items-start justify-start gap-2 overflow-hidden rounded-lg border-accent-2 transition-all ease-in-out hover:border-accent" |
|
| 9 | 9 | > |
|
| 10 | 10 | <a href={content.link} target="_blank"> |
|
| 11 | - | <Image height="800" width="1200" src={content.image} alt="prject image" /> |
|
| 11 | + | <Image height="800" width="1200" src={content.image} alt={content.title} loading={index < 2 ? "eager" : "lazy"} /> |
|
| 12 | 12 | <div class="flex flex-col gap-2 p-4"> |
|
| 13 | 13 | <h2 class="text-2xl font-bold">{content.title}</h2> |
|
| 14 | 14 | <p class=""> |
|
| 58 | 58 | src="https://api.iconify.design/hugeicons:tree-04.svg?color=%23888888" |
|
| 59 | 59 | class="inline-block h-5 w-5" |
|
| 60 | 60 | height="100" |
|
| 61 | + | loading="eager" |
|
| 61 | 62 | width="100" |
|
| 62 | 63 | alt="sequoia logo" |
|
| 63 | 64 | /> Sequoia |
|
| 73 | 74 | ><Image |
|
| 74 | 75 | src="https://api.iconify.design/fluent-emoji-high-contrast:beaver.svg?color=%23888888" |
|
| 75 | 76 | class="inline-block h-4 w-4" |
|
| 77 | + | loading="eager" |
|
| 76 | 78 | height="100" |
|
| 77 | 79 | width="100" |
|
| 78 | 80 | alt="bhvr" |
|
| 89 | 91 | ><Image |
|
| 90 | 92 | height="100" |
|
| 91 | 93 | width="100" |
|
| 94 | + | loading="lazy" |
|
| 92 | 95 | src="https://api.iconify.design/ph:cowboy-hat-fill.svg?color=%23888888" |
|
| 93 | 96 | class="inline-block h-4 w-4" |
|
| 94 | 97 | alt="cowboy logo" |
|
| 105 | 108 | ><Image |
|
| 106 | 109 | height="100" |
|
| 107 | 110 | width="100" |
|
| 111 | + | loading="lazy" |
|
| 108 | 112 | src="https://api.iconify.design/material-symbols:photo-camera.svg?color=%23888888" |
|
| 109 | 113 | class="inline-block h-4 w-4" |
|
| 110 | 114 | alt="camera icon" |
|
| 121 | 125 | ><Image |
|
| 122 | 126 | height="100" |
|
| 123 | 127 | width="100" |
|
| 128 | + | loading="lazy" |
|
| 124 | 129 | src="https://files.stevedylan.dev/stablecore.png" |
|
| 125 | 130 | class="inline-block h-4 w-4" |
|
| 126 | 131 | alt="Stablecore Logo" |
|
| 12 | 12 | <PageLayout meta={meta}> |
|
| 13 | 13 | <div class="flex min-h-screen flex-col items-start justify-start gap-6"> |
|
| 14 | 14 | <h1 class="title">Projects</h1> |
|
| 15 | - | {projects.map((project) => <ProjectCard content={project} />)} |
|
| 15 | + | {projects.map((project, index) => <ProjectCard content={project} index={index} />)} |
|
| 16 | 16 | </div> |
|
| 17 | 17 | </PageLayout> |