- Replace the flat dither backdrop with a lit, rotating torus drawn the way donut.c does it: a z-buffer per cell and a luminance ramp from a dot to a solid block, sized against the shorter viewport axis. The dither field stays underneath as dust. It leads on the landing page and fades back where there is reading to do, and a scrim keeps the projects heading legible over it. - Thicken the glass: one .surface treatment with a heavier blur, more transparency and an SVG film grain, shared by the header, hero, cards, panels and footer. - Give the landing page labelled contact cards for LinkedIn, Gitea and email in place of three bare icons. - Drop the status chips from project cards and entry headers. - Remove the light theme, its toggle and theme.js outright. - Add restrained motion: underlines growing from the left on links and nav items, a lift on cards, buttons and contact cards, and tags brightening with their card. All of it is off under prefers-reduced-motion. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
224 lines
11 KiB
HTML
Executable File
224 lines
11 KiB
HTML
Executable File
<!DOCTYPE html>
|
|
<html lang='en'>
|
|
|
|
<head>
|
|
<title>Braeden Sowinski - Software Engineer | sowinski.dev</title>
|
|
<meta charset='utf-8'>
|
|
<meta name='description' content="Braeden Sowinski is a software engineer and BCIT CST student focused on backend systems, APIs, data-driven software, and practical technical problem solving." />
|
|
<meta name='author' content="Braeden Sowinski" />
|
|
<meta name='keywords' content="Braeden Sowinski, sowinski.dev, software engineer, backend systems, APIs, BCIT, portfolio" />
|
|
<meta name='viewport' content='width=device-width, initial-scale=1.0'>
|
|
<meta name='robots' content='index, follow'>
|
|
<meta name='theme-color' content='#0c0d10'>
|
|
<meta name='application-name' content='sowinski.dev'>
|
|
<link rel='canonical' href='https://sowinski.dev/'>
|
|
<meta property='og:type' content='website'>
|
|
<meta property='og:title' content='Braeden Sowinski - Software Engineer | sowinski.dev'>
|
|
<meta property='og:description' content='Braeden Sowinski is a software engineer and BCIT CST student focused on backend systems, APIs, data-driven software, and practical technical problem solving.'>
|
|
<meta property='og:url' content='https://sowinski.dev/'>
|
|
<meta property='og:site_name' content='Braeden Sowinski'>
|
|
<meta property='og:image' content='https://avatars.githubusercontent.com/u/48144618?v=4'>
|
|
<meta property='og:image:alt' content='Braeden Sowinski profile photo'>
|
|
<meta name='twitter:card' content='summary_large_image'>
|
|
<meta name='twitter:title' content='Braeden Sowinski - Software Engineer | sowinski.dev'>
|
|
<meta name='twitter:description' content='Braeden Sowinski is a software engineer and BCIT CST student focused on backend systems, APIs, data-driven software, and practical technical problem solving.'>
|
|
<meta name='twitter:image' content='https://avatars.githubusercontent.com/u/48144618?v=4'>
|
|
<script type='application/ld+json'>
|
|
{
|
|
"@context": "https://schema.org",
|
|
"@graph": [
|
|
{
|
|
"@type": "WebSite",
|
|
"@id": "https://sowinski.dev/#website",
|
|
"url": "https://sowinski.dev/",
|
|
"name": "Braeden Sowinski",
|
|
"alternateName": [
|
|
"sowinski.dev",
|
|
"Braeden Sowinski Portfolio"
|
|
],
|
|
"inLanguage": "en-CA",
|
|
"publisher": {
|
|
"@id": "https://sowinski.dev/#person"
|
|
}
|
|
},
|
|
{
|
|
"@type": "ProfilePage",
|
|
"@id": "https://sowinski.dev/#profile",
|
|
"url": "https://sowinski.dev/",
|
|
"name": "Braeden Sowinski - Software Engineer",
|
|
"description": "Braeden Sowinski is a software engineer and BCIT CST student focused on backend systems, APIs, data-driven software, and practical technical problem solving.",
|
|
"isPartOf": {
|
|
"@id": "https://sowinski.dev/#website"
|
|
},
|
|
"about": {
|
|
"@id": "https://sowinski.dev/#person"
|
|
},
|
|
"mainEntity": {
|
|
"@id": "https://sowinski.dev/#person"
|
|
}
|
|
},
|
|
{
|
|
"@type": "Person",
|
|
"@id": "https://sowinski.dev/#person",
|
|
"name": "Braeden Sowinski",
|
|
"givenName": "Braeden",
|
|
"familyName": "Sowinski",
|
|
"url": "https://sowinski.dev/",
|
|
"mainEntityOfPage": {
|
|
"@id": "https://sowinski.dev/#profile"
|
|
},
|
|
"image": {
|
|
"@type": "ImageObject",
|
|
"url": "https://avatars.githubusercontent.com/u/48144618?v=4"
|
|
},
|
|
"jobTitle": [
|
|
"Software Engineer",
|
|
"Systems Administrator"
|
|
],
|
|
"email": "mailto:braeden@sowinski.dev",
|
|
"description": "Software engineer and BCIT CST student focused on backend systems, APIs, data-driven software, and practical technical problem solving.",
|
|
"affiliation": [
|
|
{
|
|
"@type": "CollegeOrUniversity",
|
|
"name": "British Columbia Institute of Technology",
|
|
"alternateName": "BCIT"
|
|
},
|
|
{
|
|
"@type": "Organization",
|
|
"name": "Coding 4 All",
|
|
"alternateName": "C4A"
|
|
}
|
|
],
|
|
"sameAs": [
|
|
"https://git.sowinski.dev/SowinskiBraeden",
|
|
"https://www.linkedin.com/in/sowinskibraeden"
|
|
],
|
|
"knowsAbout": [
|
|
"Backend systems",
|
|
"APIs",
|
|
"Data-driven software",
|
|
"System administration",
|
|
"Software engineering"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
</script>
|
|
|
|
<link rel="icon" type="image/svg+xml" href="./public/images/favicon.svg">
|
|
<link rel="stylesheet" href="./public/css/style.css">
|
|
</head>
|
|
|
|
<body data-page="home">
|
|
<canvas id="ascii-bg" aria-hidden="true"></canvas>
|
|
<header class="header surface">
|
|
<nav class="nav">
|
|
<div class="logo">
|
|
<a href="./" title="sowinski.dev">
|
|
<img src="https://avatars.githubusercontent.com/u/48144618?v=4" alt="Braeden Sowinski profile photo" style="border-radius:50%;"
|
|
aria-label="Braeden Sowinski profile photo" height="32">sowinski.dev
|
|
</a>
|
|
</div>
|
|
<ul id="menu" class="nav__links">
|
|
<li id="home-link">
|
|
<a href="./" title="Home">
|
|
<span class="active">Home</span>
|
|
</a>
|
|
</li>
|
|
<li id="about-link">
|
|
<a href="./about.html" title="About">
|
|
<span class="active">About</span>
|
|
</a>
|
|
</li>
|
|
<li id="projects-link">
|
|
<a href="./projects.html" title="Projects">
|
|
<span class="active">Projects</span>
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
<p class="menu cta">Menu</p>
|
|
</nav>
|
|
|
|
<div id="mobile__menu" class="overlay">
|
|
<button type="button" class="close" aria-label="Close menu">×</button>
|
|
<div class="overlay__content">
|
|
<a href="./" title="Home"><span class="active">Home</span></a>
|
|
<a href="./about.html" title="About"><span class="active">About</span></a>
|
|
<a href="./projects.html" title="Projects"><span class="active">Projects</span></a>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
|
|
<main class="main">
|
|
<section class="term surface">
|
|
<div class="term__bar">
|
|
<span class="term__dot"></span>
|
|
<span class="term__dot"></span>
|
|
<span class="term__dot"></span>
|
|
<span class="term__title">braeden@sowinski.dev</span>
|
|
</div>
|
|
<div class="term__body">
|
|
<div class="term__avatar-wrap">
|
|
<img src="https://avatars.githubusercontent.com/u/48144618" class="term__avatar" alt="Braeden Sowinski profile photo">
|
|
</div>
|
|
|
|
<div class="term__stream">
|
|
<p class="cmd"><span class="cmd__text">whoami</span><span class="caret"></span></p>
|
|
|
|
<h1 class="name">Braeden Sowinski</h1>
|
|
<p class="des">
|
|
Software Engineer & Systems Admin | CST Student @ BCIT
|
|
</p>
|
|
<p class="des hero-description-secondary">
|
|
Backend systems, APIs, data-driven software, and low-level problem solving
|
|
</p>
|
|
|
|
<div class="hero-badges">
|
|
<span class="badge">BCIT CST Diploma</span>
|
|
<span class="badge">C4A President</span>
|
|
<span class="badge">Hackathon Podium Finisher</span>
|
|
</div>
|
|
|
|
<div class="hero-actions">
|
|
<a class="button button-primary" href="./projects.html">Projects</a>
|
|
<a class="button button-secondary" href="./about.html">About</a>
|
|
</div>
|
|
|
|
<div class="social-icons hero-social">
|
|
<a class="social-link" href="https://www.linkedin.com/in/SowinskiBraeden" target="_blank" rel="noopener noreferrer me"
|
|
title="LinkedIn">
|
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-linkedin"
|
|
viewBox="0 0 16 16">
|
|
<path
|
|
d="M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854zm4.943 12.248V6.169H2.542v7.225zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248S2.4 3.226 2.4 3.934c0 .694.521 1.248 1.327 1.248zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016l.016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225z" />
|
|
</svg>
|
|
<span>LinkedIn</span>
|
|
</a>
|
|
<a class="social-link" href="https://git.sowinski.dev/SowinskiBraeden" target="_blank" rel="noopener noreferrer me" title="Gitea" aria-label="Gitea">
|
|
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill="currentColor">
|
|
<path
|
|
d="M4.209 4.603c-.247 0-.525.02-.84.088-.333.07-1.28.283-2.054 1.027C-.403 7.25.035 9.685.089 10.052c.065.446.263 1.687 1.21 2.768 1.749 2.141 5.513 2.092 5.513 2.092s.462 1.103 1.168 2.119c.955 1.263 1.936 2.248 2.89 2.367 2.406 0 7.212-.004 7.212-.004s.458.004 1.08-.394c.535-.324 1.013-.893 1.013-.893s.492-.527 1.18-1.73c.21-.37.385-.729.538-1.068 0 0 2.107-4.471 2.107-8.823-.042-1.318-.367-1.55-.443-1.627-.156-.156-.366-.153-.366-.153s-4.475.252-6.792.306c-.508.011-1.012.023-1.512.027v4.474l-.634-.301c0-1.39-.004-4.17-.004-4.17-1.107.016-3.405-.084-3.405-.084s-5.399-.27-5.987-.324c-.187-.011-.401-.032-.648-.032zm.354 1.832h.111s.271 2.269.6 3.597C5.549 11.147 6.22 13 6.22 13s-.996-.119-1.641-.348c-.99-.324-1.409-.714-1.409-.714s-.73-.511-1.096-1.52C1.444 8.73 2.021 7.7 2.021 7.7s.32-.859 1.47-1.145c.395-.106.863-.12 1.072-.12zm8.33 2.554c.26.003.509.127.509.127l.868.422-.529 1.075a.686.686 0 0 0-.614.359.685.685 0 0 0 .072.756l-.939 1.924a.69.69 0 0 0-.66.527.687.687 0 0 0 .347.763.686.686 0 0 0 .867-.206.688.688 0 0 0-.069-.882l.916-1.874a.667.667 0 0 0 .237-.02.657.657 0 0 0 .271-.137 8.826 8.826 0 0 1 1.016.512.761.761 0 0 1 .286.282c.073.21-.073.569-.073.569-.087.29-.702 1.55-.702 1.55a.692.692 0 0 0-.676.477.681.681 0 1 0 1.157-.252c.073-.141.141-.282.214-.431.19-.397.515-1.16.515-1.16.035-.066.218-.394.103-.814-.095-.435-.48-.638-.48-.638-.467-.301-1.116-.58-1.116-.58s0-.156-.042-.27a.688.688 0 0 0-.148-.241l.516-1.062 2.89 1.401s.48.218.583.619c.073.282-.019.534-.069.657-.24.587-2.1 4.317-2.1 4.317s-.232.554-.748.588a1.065 1.065 0 0 1-.393-.045l-.202-.08-4.31-2.1s-.417-.218-.49-.596c-.083-.31.104-.691.104-.691l2.073-4.272s.183-.37.466-.497a.855.855 0 0 1 .35-.077z" />
|
|
</svg>
|
|
<span>Gitea</span>
|
|
</a>
|
|
<a class="social-link" href="mailto:braeden@sowinski.dev" target="_blank" rel="noopener noreferrer me" title="Email">
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 21" fill="none" stroke="currentcolor" stroke-width="2"
|
|
stroke-linecap="round" stroke-linejoin="round">
|
|
<path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z" />
|
|
<polyline points="22,6 12,13 2,6" />
|
|
</svg>
|
|
<span>Email</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</main>
|
|
|
|
<script src="./public/scripts/mobile.js"></script>
|
|
<script src="./public/scripts/ascii-bg.js"></script>
|
|
<script src="./public/scripts/hero-effects.js"></script>
|
|
</body>
|
|
|
|
</html>
|