feat: make all underlines thicker
All checks were successful
Docker / build-and-push-image (push) Successful in 52s
All checks were successful
Docker / build-and-push-image (push) Successful in 52s
This commit is contained in:
parent
5fc17449e1
commit
93d9b30fb6
4 changed files with 72 additions and 46 deletions
|
@ -12,7 +12,7 @@
|
||||||
and on the side I manage online operations for a family run
|
and on the side I manage online operations for a family run
|
||||||
<a
|
<a
|
||||||
href="/projects/camouflage-store"
|
href="/projects/camouflage-store"
|
||||||
class="text-secondary underline decoration-2 underline-offset-2 hover:no-underline"
|
class="text-secondary underline hover:no-underline"
|
||||||
>outdoor apparel business</a
|
>outdoor apparel business</a
|
||||||
>.
|
>.
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -15,6 +15,7 @@ import webbossicon from "./webboss.png";
|
||||||
import uopicon from "./uop.png";
|
import uopicon from "./uop.png";
|
||||||
import ucsdicon from "./ucsd.png";
|
import ucsdicon from "./ucsd.png";
|
||||||
import sdcicon from "./sdc.png";
|
import sdcicon from "./sdc.png";
|
||||||
|
import keviccicon from "./kevicc.png";
|
||||||
|
|
||||||
const projects = [
|
const projects = [
|
||||||
{
|
{
|
||||||
|
@ -77,23 +78,20 @@ const experience = [
|
||||||
image: nisaicon,
|
image: nisaicon,
|
||||||
role: "Promotional graphic design",
|
role: "Promotional graphic design",
|
||||||
date: "2022",
|
date: "2022",
|
||||||
link: "https://www.nisalocally.co.uk",
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 3,
|
id: 3,
|
||||||
name: "WebBoss",
|
|
||||||
image: webbossicon,
|
|
||||||
role: "Website mock-up templates (Work experience)",
|
|
||||||
date: "2019",
|
|
||||||
link: "https://webboss.io",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
id: 4,
|
|
||||||
name: "Paignton Picture House Trust",
|
name: "Paignton Picture House Trust",
|
||||||
image: pphicon,
|
image: pphicon,
|
||||||
role: "Photogrammetrist (Volunteering)",
|
role: "Photogrammetrist (Volunteering)",
|
||||||
date: "2023",
|
date: "2023",
|
||||||
link: "https://paigntonpicturehouse.org",
|
},
|
||||||
|
{
|
||||||
|
id: 4,
|
||||||
|
name: "WebBoss",
|
||||||
|
image: webbossicon,
|
||||||
|
role: "Website mock-up templates (Work experience)",
|
||||||
|
date: "2019",
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
const sortedExperience = [...experience].sort((a, b) => a.id - b.id);
|
const sortedExperience = [...experience].sort((a, b) => a.id - b.id);
|
||||||
|
@ -121,6 +119,14 @@ const education = [
|
||||||
"UAL Level 3 Extended Diploma in Creative Media Production and Technology",
|
"UAL Level 3 Extended Diploma in Creative Media Production and Technology",
|
||||||
date: "2020 - 2022",
|
date: "2020 - 2022",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
id: 4,
|
||||||
|
name: "King Edward VI Community College",
|
||||||
|
image: keviccicon,
|
||||||
|
course:
|
||||||
|
"Art & Design BTEC, Comp Sci A-level, 10 GCSEs, Creative iMedia Level 2",
|
||||||
|
date: "2014 - 2020",
|
||||||
|
},
|
||||||
];
|
];
|
||||||
const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
||||||
---
|
---
|
||||||
|
@ -185,7 +191,7 @@ const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
||||||
>
|
>
|
||||||
<Image
|
<Image
|
||||||
src={me}
|
src={me}
|
||||||
alt="Troy Lusty"
|
alt={SITE.AUTHOR}
|
||||||
class="aspect-square h-full w-full"
|
class="aspect-square h-full w-full"
|
||||||
loading="eager"
|
loading="eager"
|
||||||
/>
|
/>
|
||||||
|
@ -196,16 +202,17 @@ const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
||||||
<p class="text-secondary/70 text-lg font-medium">
|
<p class="text-secondary/70 text-lg font-medium">
|
||||||
I’m a <a
|
I’m a <a
|
||||||
href="#education"
|
href="#education"
|
||||||
class="text-secondary underline decoration-2 underline-offset-2 hover:no-underline"
|
class="text-secondary underline hover:no-underline"
|
||||||
>Game Arts and Design</a
|
>Game Arts and Design</a
|
||||||
> degree student with a chosen area of focus on the design, lighting, and rendering
|
> degree student with a chosen area of focus on the design, lighting, and rendering
|
||||||
of 3D environments. Using either real-time or offline rendering techniques
|
of 3D environments. Using either real-time or offline rendering techniques
|
||||||
in software packages such as Blender and Unreal Engine. In addition to this
|
in software packages such as Blender, Unreal Engine, and more recently: Godot.
|
||||||
I also have an interest in web development, graphic design, and cyber security
|
In addition to this I also have an interest in web development, graphic design,
|
||||||
which all make up a large part of my hobbies not including motorbikes. If you're
|
and cyber security which all make up a large part of my hobbies not including
|
||||||
reading this offline, my portfolio of work can be found on my website at <a
|
motorbikes. If you're reading this offline, my portfolio of work can be found
|
||||||
|
on my website at <a
|
||||||
href="/projects"
|
href="/projects"
|
||||||
class="text-secondary underline decoration-2 underline-offset-2 hover:no-underline"
|
class="text-secondary underline hover:no-underline"
|
||||||
>troylusty.com/projects</a
|
>troylusty.com/projects</a
|
||||||
>.
|
>.
|
||||||
</p>
|
</p>
|
||||||
|
@ -213,7 +220,7 @@ const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
||||||
|
|
||||||
<section class="animate-reveal opacity-0 [animation-delay:0.2s]">
|
<section class="animate-reveal opacity-0 [animation-delay:0.2s]">
|
||||||
<div
|
<div
|
||||||
class="flex flex-col-reverse justify-between gap-5 rounded-sm bg-orange-200/20 p-6 transition-transform duration-300 hover:scale-101 md:flex-row dark:bg-orange-900/20"
|
class="flex flex-col-reverse justify-between gap-5 rounded-sm bg-yellow-200/20 p-6 transition-transform duration-300 hover:scale-102 md:flex-row dark:bg-yellow-900/20"
|
||||||
>
|
>
|
||||||
<div class="flex flex-col gap-4">
|
<div class="flex flex-col gap-4">
|
||||||
<h3 class="text-secondary text-3xl font-medium">
|
<h3 class="text-secondary text-3xl font-medium">
|
||||||
|
@ -223,7 +230,7 @@ const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
||||||
Do you think I'd be a good fit to help out on a project you're working
|
Do you think I'd be a good fit to help out on a project you're working
|
||||||
on, or maybe just want to chat? <Link
|
on, or maybe just want to chat? <Link
|
||||||
href="mailto:hello@troylusty.com"
|
href="mailto:hello@troylusty.com"
|
||||||
class="underline decoration-2 underline-offset-2 hover:no-underline"
|
class="underline hover:no-underline"
|
||||||
>
|
>
|
||||||
Send me an email!</Link
|
Send me an email!</Link
|
||||||
>
|
>
|
||||||
|
@ -232,7 +239,7 @@ const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
<Icon
|
<Icon
|
||||||
name="mdi:handshake"
|
name="mdi:handshake"
|
||||||
class="h-26 w-auto rounded-full bg-orange-200/70 p-1 text-orange-600 dark:bg-orange-900/70 dark:text-orange-400"
|
class="h-26 w-auto rounded-full bg-yellow-200/70 p-1 text-yellow-600 dark:bg-yellow-900/70 dark:text-yellow-400"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -246,7 +253,7 @@ const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
||||||
<div class="mt-3 flex flex-col gap-3">
|
<div class="mt-3 flex flex-col gap-3">
|
||||||
{
|
{
|
||||||
sortedEducation.map((education) => (
|
sortedEducation.map((education) => (
|
||||||
<div class="bg-tertiary/20 flex items-center justify-between gap-2 rounded-sm p-3 transition-transform duration-300 hover:-translate-y-1">
|
<div class="bg-tertiary/10 flex items-center justify-between gap-2 rounded-sm p-3 transition-transform duration-300 hover:-translate-y-1">
|
||||||
<div class="flex items-center gap-2">
|
<div class="flex items-center gap-2">
|
||||||
<Image
|
<Image
|
||||||
src={education.image}
|
src={education.image}
|
||||||
|
@ -266,14 +273,25 @@ const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
||||||
))
|
))
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
|
<div class="flex flex-wrap gap-2">
|
||||||
<div
|
<div
|
||||||
class="mt-3 flex w-fit items-center gap-2 rounded-full bg-green-200/20 px-3 py-1.5 dark:bg-green-900/20"
|
class="mt-3 flex w-fit items-center gap-2 rounded-full bg-green-200/20 px-3 py-1.5 transition-transform duration-300 hover:scale-102 hover:-rotate-2 dark:bg-green-900/20"
|
||||||
>
|
>
|
||||||
<Icon
|
<Icon
|
||||||
name="mdi:check-decagram-outline"
|
name="mdi:check-decagram-outline"
|
||||||
class="h-auto w-6 rounded-full bg-green-200/70 p-0.5 text-green-600 dark:bg-green-900/70 dark:text-green-400"
|
class="h-auto w-8 rounded-full bg-green-200/70 p-0.5 text-green-600 dark:bg-green-900/70 dark:text-green-400"
|
||||||
/>
|
/>
|
||||||
<p class="text-sm">Full drivers licence (A & B)</p>
|
<p>Full drivers licence (A & B)</p>
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
class="mt-3 flex w-fit items-center gap-2 rounded-full bg-cyan-200/20 px-3 py-1.5 transition-transform duration-300 hover:scale-102 hover:-rotate-2 dark:bg-cyan-900/20"
|
||||||
|
>
|
||||||
|
<Icon
|
||||||
|
name="mdi:water"
|
||||||
|
class="h-auto w-8 rounded-full bg-cyan-200/70 p-0.5 text-cyan-600 dark:bg-cyan-900/70 dark:text-cyan-400"
|
||||||
|
/>
|
||||||
|
<p>Lifesaving certification</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
@ -285,24 +303,26 @@ const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
||||||
<div class="mt-3 flex flex-col gap-3">
|
<div class="mt-3 flex flex-col gap-3">
|
||||||
{
|
{
|
||||||
sortedExperience.map((experience) => (
|
sortedExperience.map((experience) => (
|
||||||
<div class="bg-tertiary/20 flex items-center justify-between gap-2 rounded-sm p-3 transition-transform duration-300 hover:-translate-y-1">
|
<div class="bg-tertiary/10 flex items-center justify-between gap-2 rounded-sm p-3 transition-transform duration-300 hover:-translate-y-1">
|
||||||
<div class="flex items-center gap-2">
|
<div class="flex items-center gap-2">
|
||||||
<Link href={experience.link}>
|
|
||||||
<Image
|
<Image
|
||||||
src={experience.image}
|
src={experience.image}
|
||||||
alt={experience.name}
|
alt={experience.name}
|
||||||
class="h-auto max-w-12 rounded-sm"
|
class="h-auto max-w-12 rounded-sm"
|
||||||
loading="eager"
|
loading="eager"
|
||||||
/>
|
/>
|
||||||
</Link>
|
|
||||||
<p class="font-medium">
|
<p class="font-medium">
|
||||||
{experience.role},
|
{experience.role},
|
||||||
|
{experience.link ? (
|
||||||
<Link
|
<Link
|
||||||
href={experience.link}
|
href={experience.link}
|
||||||
class="text-secondary/70 underline hover:no-underline"
|
class="text-secondary/70 underline hover:no-underline"
|
||||||
>
|
>
|
||||||
{experience.name}
|
{experience.name}
|
||||||
</Link>
|
</Link>
|
||||||
|
) : (
|
||||||
|
<span class="text-secondary/70">{experience.name}</span>
|
||||||
|
)}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<p class="font-mono text-sm font-light text-nowrap">
|
<p class="font-mono text-sm font-light text-nowrap">
|
||||||
|
@ -322,7 +342,7 @@ const sortedEducation = [...education].sort((a, b) => a.id - b.id);
|
||||||
<ol class="mt-3 grid grid-cols-1 gap-3 md:grid-cols-2 print:grid-cols-2">
|
<ol class="mt-3 grid grid-cols-1 gap-3 md:grid-cols-2 print:grid-cols-2">
|
||||||
{
|
{
|
||||||
sortedProjects.map((project) => (
|
sortedProjects.map((project) => (
|
||||||
<li class="bg-tertiary/20 flex flex-col overflow-hidden rounded-sm p-3">
|
<li class="bg-tertiary/10 flex flex-col overflow-hidden rounded-sm p-3 transition-transform duration-300 hover:scale-102">
|
||||||
<div class="flex flex-col space-y-1.5">
|
<div class="flex flex-col space-y-1.5">
|
||||||
<div class="space-y-1">
|
<div class="space-y-1">
|
||||||
<>
|
<>
|
||||||
|
|
BIN
src/pages/about/kevicc.png
Normal file
BIN
src/pages/about/kevicc.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 86 KiB |
|
@ -53,3 +53,9 @@
|
||||||
text-decoration: var(--shiki-dark-text-decoration) !important;
|
text-decoration: var(--shiki-dark-text-decoration) !important;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@layer utilities {
|
||||||
|
.underline {
|
||||||
|
@apply underline decoration-2 underline-offset-2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue