-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
181 lines (171 loc) · 22.1 KB
/
index.html
File metadata and controls
181 lines (171 loc) · 22.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Michael Rutherford</title>
<script src="https://cdn.tailwindcss.com"></script>
</head>
<body class="bg-gradient-to-br from-slate-900 via-slate-800 to-slate-900 text-slate-100">
<div class="max-w-4xl mx-auto px-6 py-16">
<!-- Header -->
<header class="mb-16">
<h1 class="text-5xl font-bold mb-2 bg-gradient-to-r from-blue-400 to-cyan-400 bg-clip-text text-transparent">Michael Rutherford</h1>
<div class="text-slate-400 mb-6">
<p class="text-lg">Software Engineer</p>
<p class="text-lg">Austin, Texas</p>
</div>
<div class="flex gap-6 flex-wrap">
<a href="https://github.com/michaelrutherford" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition">
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24"><path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v 3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/></svg>
GitHub
</a>
<a href="https://www.linkedin.com/in/michaelloganrutherford/" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition">
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24"><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.475-2.236-1.986-2.236-1.081 0-1.722.722-2.004 1.418-.103.249-.129.597-.129.946v5.441h-3.554s.047-8.842 0-9.769h3.554v1.383c.43-.664 1.199-1.61 2.920-1.61 2.135 0 3.753 1.395 3.753 4.402v5.594zM5.337 8.855c-1.144 0-1.915-.759-1.915-1.71 0-.955.768-1.71 1.959-1.71 1.189 0 1.917.755 1.917 1.71 0 .951-.729 1.71-1.961 1.71zm1.582 11.597H3.635V9.683h3.284v10.769zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.225 0z"/></svg>
LinkedIn
</a>
<a href="mailto:contact@example.com" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition">
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"></path></svg>
Email
</a>
</div>
</header>
<!-- About -->
<section class="mb-16">
<h2 class="text-3xl font-bold mb-8 text-blue-400">About</h2>
<div class="space-y-4 text-slate-300 leading-relaxed">
<p>I am a software developer based in Austin, Texas, with a strong foundation in computer science and a passion for technology. I earned my <u>Bachelor's degree in Computer Science</u> from Southern New Hampshire University in 2024 and an <u>Associate's degree in Computer Science</u> from Austin Community College in 2021.</p>
<p>From 2023 to 2024, I worked as a Technical Support Advisor for Apple via KellyConnect, where I used my technical expertise to provide high-quality customer support, troubleshoot complex technical issues, and ensure a seamless user experience. I am currently working as a Technical Support Advisor for Inktavo.</p>
<p>Throughout my academic and professional journey, I have honed my skills in software development. I am proficient in languages like Ruby, Python, JavaScript, and C/C++, and I have experience working with various frameworks and tools, such as React and Node.js.</p>
<p>In high school, I was an early volunteer team member for the Solus Project Linux distribution. In this role, I contributed to developing various components, including the text editor and a prototype rewrite of the OS installer, helping to aid the project in its formative stages.</p>
<p>In my free time, I actively work on personal coding projects and contribute to open-source communities. When I'm not coding, I enjoy spending time with my family, listening to music, exploring nature, and reading books.</p>
</div>
</section>
<!-- Skills -->
<section class="mb-16">
<h2 class="text-3xl font-bold mb-8 text-blue-400">Skills</h2>
<div class="flex flex-wrap gap-3">
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">Python</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">Linux</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">JavaScript</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">Ruby</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">SQL</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">Rails</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">HTML/CSS</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">Git</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">Vim</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">C/C++</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">Docker</span>
<span class="px-4 py-2 bg-slate-700 hover:bg-slate-600 text-cyan-300 rounded-full text-sm font-medium transition cursor-default">Java</span>
</div>
</section>
<!-- Projects -->
<section class="mb-16">
<h2 class="text-3xl font-bold mb-8 text-blue-400">Selected Projects</h2>
<div class="space-y-8">
<!-- Silvalide -->
<div class="bg-slate-800 border border-slate-700 rounded-lg p-8 hover:border-slate-600 transition">
<h3 class="text-2xl font-bold text-cyan-300 mb-4">Silvalide</h3>
<p class="text-slate-300 mb-4 leading-relaxed">Silvalide is a program used to emulate the effects of analog film on digital images. The program is written in Python and leverages NumPy and Pillow for image manipulation and processing, while Qt (PySide6) is used for the GUI. It offers a variety of selectable presets, including options for standard, sepia tone, orthochromatic, and infrared film effects. Its name comes from the silver halide crystals used in traditional film.</p>
<p class="text-sm text-slate-400 mb-4">Licensed under the MIT License.</p>
<div class="flex gap-4">
<a href="https://github.com/michaelrutherford/silvalide" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24"><path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v 3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/></svg>
GitHub
</a>
</div>
</div>
<!-- Scrybin -->
<div class="bg-slate-800 border border-slate-700 rounded-lg p-8 hover:border-slate-600 transition">
<h3 class="text-2xl font-bold text-cyan-300 mb-4">Scrybin</h3>
<p class="text-slate-300 mb-4 leading-relaxed">Scrybin is a minimalist notetaking app with customizable themes, a distraction-free zen mode, and basic editing tools to help organize your thoughts. It is written in Python and uses Qt (PySide6) for the GUI.</p>
<p class="text-sm text-slate-400 mb-4">Licensed under the MIT License.</p>
<div class="flex gap-4">
<a href="https://github.com/michaelrutherford/scrybin" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24"><path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v 3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/></svg>
GitHub
</a>
</div>
</div>
<!-- Conway's Game of Life -->
<div class="bg-slate-800 border border-slate-700 rounded-lg p-8 hover:border-slate-600 transition">
<h3 class="text-2xl font-bold text-cyan-300 mb-4">Conway's Game of Life</h3>
<p class="text-slate-300 mb-4 leading-relaxed">An interactive Python implementation of the cellular automaton known as Conway's Game of Life. A cellular automaton is a discrete model composed of a grid of cells, each of which can be in a finite number of states and evolves according to a set of rules based on the states of neighboring cells. Users can play, pause, clear, reset, and randomize the grid while exploring the evolution of these emerging patterns. This program also features simulation statistics and adjustable speed controls.</p>
<p class="text-sm text-slate-400 mb-4">Licensed under GNU GPL v3.0.</p>
<div class="flex gap-4">
<a href="https://github.com/michaelrutherford/game-of-life" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24"><path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v 3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/></svg>
GitHub
</a>
</div>
</div>
<!-- Melody Grid -->
<div class="bg-slate-800 border border-slate-700 rounded-lg p-8 hover:border-slate-600 transition">
<h3 class="text-2xl font-bold text-cyan-300 mb-4">Melody Grid</h3>
<p class="text-slate-300 mb-4 leading-relaxed">A web-based music grid that enables users to create and play melodies and chords. The grid consists of an 8x8 matrix where each cell represents a different pitch within a selected scale. Tapping on a bubble highlights it, and highlighted cells are played when the play button is pressed. Users can also adjust playback tempo, select the tonic and scale, clear the grid, or even randomize the grid. Works on both desktop and mobile platforms.</p>
<p class="text-sm text-slate-400 mb-4">Licensed under GNU GPL v3.0.</p>
<div class="flex gap-4">
<a href="https://michaelrutherford.github.io/melody-grid/" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"></path></svg>
Website
</a>
<a href="https://github.com/michaelrutherford/melody-grid" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24"><path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v 3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/></svg>
GitHub
</a>
</div>
</div>
<!-- Microbe Simulator -->
<div class="bg-slate-800 border border-slate-700 rounded-lg p-8 hover:border-slate-600 transition">
<h3 class="text-2xl font-bold text-cyan-300 mb-4">Microbe Simulator</h3>
<p class="text-slate-300 mb-4 leading-relaxed">A JavaScript simulation where users can drag and drop different types of microbes (predators, viruses, prey, reproducers) to observe their unique behaviors and interactions. Predators hunt other microbes, viruses infect prey and reproducers, prey move randomly, and reproducers multiply under specific conditions. The code includes collision detection, lifespan management, and real-time updates on microbe statistics.</p>
<div class="flex gap-4">
<a href="https://michaelrutherford.github.io/microbe-simulator/" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"></path></svg>
Website
</a>
<a href="https://github.com/michaelrutherford/microbe-simulator" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24"><path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v 3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/></svg>
GitHub
</a>
</div>
</div>
<!-- Shape Art -->
<div class="bg-slate-800 border border-slate-700 rounded-lg p-8 hover:border-slate-600 transition">
<h3 class="text-2xl font-bold text-cyan-300 mb-4">Shape Art</h3>
<p class="text-slate-300 mb-4 leading-relaxed">A website built with JavaScript, HTML, and CSS that generates random abstract geometric art. It creates various shapes, such as circles, squares, triangles, lines, and rings, each with random sizes, colors, positions, and rotations. Users can save their creations as PNG images.</p>
<div class="flex gap-4">
<a href="https://michaelrutherford.github.io/shape-art/" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"></path></svg>
Website
</a>
<a href="https://github.com/michaelrutherford/shape-art" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24"><path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v 3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/></svg>
GitHub
</a>
</div>
</div>
<!-- Wordshade -->
<div class="bg-slate-800 border border-slate-700 rounded-lg p-8 hover:border-slate-600 transition">
<h3 class="text-2xl font-bold text-cyan-300 mb-4">Wordshade</h3>
<p class="text-slate-300 mb-4 leading-relaxed">A JavaScript and HTML project that transforms user-input text into poetry by selectively highlighting words. Users can input paragraphs of text, which the application converts into visually distinct passages or phrases. Additionally, the project includes functionality to save the transformed text as a .txt file, facilitating easy sharing.</p>
<div class="flex gap-4">
<a href="https://michaelrutherford.github.io/wordshade/" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"></path></svg>
Website
</a>
<a href="https://github.com/michaelrutherford/wordshade" class="flex items-center gap-2 text-blue-400 hover:text-blue-300 transition font-medium">
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 24 24"><path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v 3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"/></svg>
GitHub
</a>
</div>
</div>
</div>
</section>
<!-- Footer -->
<footer class="text-center text-slate-500 text-sm">
<p>© 2025 Michael Rutherford</p>
</footer>
</div>
</body>
</html>