-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
280 lines (258 loc) · 16.3 KB
/
Copy pathindex.html
File metadata and controls
280 lines (258 loc) · 16.3 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
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>darcodev — Hardware & Software Projects</title>
<meta name="description" content="Portfolio of darcodev, building hardware and software projects. Python tooling, reverse engineering, and electronics." />
<meta property="og:title" content="darcodev — Hardware & Software Projects" />
<meta property="og:description" content="Building tools people actually use, from Python CLIs to hardware builds." />
<meta property="og:type" content="website" />
<meta name="theme-color" content="#000000" />
<meta name="color-scheme" content="dark" />
<link rel="icon" href="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect width='32' height='32' rx='2' fill='%23000000'/%3E%3Cpath d='M9 11l5 5-5 5' stroke='%2300FF41' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3Crect x='17' y='19' width='7' height='3' rx='1' fill='%23E0E0E0'/%3E%3C/svg%3E" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="styles.css" />
<script>document.documentElement.classList.add("js");</script>
</head>
<body>
<div id="top" tabindex="-1"></div>
<a class="skip-link" href="#main">Skip to main content</a>
<div class="ambient" aria-hidden="true">
<canvas id="starfield"></canvas>
</div>
<header class="nav">
<nav class="nav-inner" aria-label="Main navigation">
<a class="brand" href="#top">
<span class="brand-tilde">~/</span><span>darco</span>
</a>
<div class="nav-links">
<a href="#projects">Projects</a>
<a href="#about">About</a>
<a href="#log">Log</a>
<a href="#contact">Contact</a>
</div>
<a class="nav-github" href="https://github.com/darcodev" target="_blank" rel="noopener noreferrer" aria-label="GitHub profile (opens in new tab)">
<svg viewBox="0 0 24 24" width="18" height="18" fill="currentColor" aria-hidden="true"><path d="M12 .5C5.65.5.5 5.65.5 12c0 5.08 3.29 9.39 7.86 10.91.58.11.79-.25.79-.56 0-.27-.01-1.17-.02-2.12-3.2.7-3.87-1.36-3.87-1.36-.52-1.33-1.28-1.68-1.28-1.68-1.04-.71.08-.7.08-.7 1.15.08 1.76 1.18 1.76 1.18 1.03 1.76 2.69 1.25 3.35.96.1-.75.4-1.25.72-1.54-2.55-.29-5.24-1.28-5.24-5.68 0-1.26.45-2.28 1.18-3.09-.12-.29-.51-1.46.11-3.04 0 0 .96-.31 3.16 1.18a11 11 0 0 1 5.76 0c2.19-1.49 3.15-1.18 3.15-1.18.63 1.58.24 2.75.12 3.04.74.81 1.18 1.83 1.18 3.09 0 4.41-2.69 5.38-5.26 5.66.41.36.78 1.06.78 2.14 0 1.55-.01 2.79-.01 3.17 0 .31.21.68.8.56A11.52 11.52 0 0 0 23.5 12C23.5 5.65 18.35.5 12 .5Z"/></svg>
<span>GitHub</span>
</a>
</nav>
</header>
<main id="main" tabindex="-1">
<section class="hero">
<div class="container hero-grid">
<div class="hero-copy reveal">
<p class="eyebrow"><span class="prompt-char" aria-hidden="true">$</span> whoami</p>
<h1>Daniel <span class="h1-handle">(darco)</span></h1>
<p class="status-line"><span class="status-dot" aria-hidden="true"></span> status: available</p>
<p class="role-line" id="role-line">
<span class="visually-hidden">software_builder && hardware_tinkerer</span>
<span class="role-typed" aria-hidden="true">software_builder <span class="amp">&&</span> hardware_tinkerer</span>
</p>
<p class="hero-sub">
High school senior building tools that actually get used. Python CLIs that solve
real problems, reverse engineering when the official way is paid or blocked,
hardware on the bench.
</p>
<div class="hero-actions">
<a class="btn btn-primary" href="#projects">
view projects
<svg viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 5v14M19 12l-7 7-7-7"/></svg>
</a>
<a class="btn btn-ghost" href="https://github.com/darcodev" target="_blank" rel="noopener noreferrer">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor" aria-hidden="true"><path d="M12 .5C5.65.5.5 5.65.5 12c0 5.08 3.29 9.39 7.86 10.91.58.11.79-.25.79-.56 0-.27-.01-1.17-.02-2.12-3.2.7-3.87-1.36-3.87-1.36-.52-1.33-1.28-1.68-1.28-1.68-1.04-.71.08-.7.08-.7 1.15.08 1.76 1.18 1.76 1.18 1.03 1.76 2.69 1.25 3.35.96.1-.75.4-1.25.72-1.54-2.55-.29-5.24-1.28-5.24-5.68 0-1.26.45-2.28 1.18-3.09-.12-.29-.51-1.46.11-3.04 0 0 .96-.31 3.16 1.18a11 11 0 0 1 5.76 0c2.19-1.49 3.15-1.18 3.15-1.18.63 1.58.24 2.75.12 3.04.74.81 1.18 1.83 1.18 3.09 0 4.41-2.69 5.38-5.26 5.66.41.36.78 1.06.78 2.14 0 1.55-.01 2.79-.01 3.17 0 .31.21.68.8.56A11.52 11.52 0 0 0 23.5 12C23.5 5.65 18.35.5 12 .5Z"/></svg>
github.com/darcodev
</a>
</div>
</div>
<div class="hero-terminal reveal" aria-hidden="true">
<div class="term">
<div class="term-bar">
<span class="term-dot red"></span><span class="term-dot yellow"></span><span class="term-dot green"></span>
<span class="term-title">daniel@darcodev — zsh</span>
</div>
<div class="term-body">
<p><span class="t-prompt">$</span> pip install chrome-lens-search</p>
<p class="t-dim">Successfully installed chrome-lens-search</p>
<p><span class="t-prompt">$</span> glens sneaker.jpg</p>
<p><span class="t-key">[nike.com]</span> Nike Air Max 90 Men's Shoes</p>
<p><span class="t-key">[stockx.com]</span> Nike Air Max 90</p>
<p><span class="t-key">[goat.com]</span> Air Max 90</p>
<p class="t-ok">✓ 3 matches in 2.1s — plain HTTP, no browser</p>
<p><span class="t-prompt">$</span> <span class="t-cursor"></span></p>
</div>
</div>
</div>
</div>
</section>
<section class="section" id="projects" tabindex="-1">
<div class="container">
<div class="section-head reveal">
<p class="eyebrow"><span class="prompt-char" aria-hidden="true">$</span> ls ~/projects</p>
<h2><span class="title-prefix" aria-hidden="true">//</span><span class="title-num">01.</span> projects</h2>
<p class="section-sub">Things I’ve built so far, software tools and hardware builds. Tap a hardware card for photos and a demo.</p>
</div>
<div class="filters reveal" role="group" aria-label="Filter projects by category">
<button class="chip is-active" data-filter="all" type="button" aria-pressed="true">all</button>
<button class="chip" data-filter="software" type="button" aria-pressed="false">software</button>
<button class="chip" data-filter="hardware" type="button" aria-pressed="false">hardware</button>
</div>
<p class="visually-hidden" role="status" id="filter-status"></p>
<noscript>
<p class="section-sub">The project cards need JavaScript to render. Everything lives at
<a class="inline-link" href="https://github.com/darcodev">github.com/darcodev</a>.</p>
</noscript>
<div class="project-grid" id="project-grid"></div>
<div class="empty-state" id="empty-state" hidden>
<svg viewBox="0 0 24 24" width="28" height="28" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="4" y="4" width="16" height="16" rx="2"/><path d="M9 9h6v6H9zM9 1v3M15 1v3M9 20v3M15 20v3M1 9h3M1 15h3M20 9h3M20 15h3"/></svg>
<h3>nothing here yet</h3>
<p>No projects in this category right now. Try another filter.</p>
</div>
</div>
</section>
<section class="section" id="about" tabindex="-1">
<div class="container about-grid">
<div class="reveal">
<p class="eyebrow"><span class="prompt-char" aria-hidden="true">$</span> cat about.md</p>
<h2><span class="title-prefix" aria-hidden="true">//</span><span class="title-num">02.</span> about me</h2>
<p class="section-sub">
I’m a high school senior. I build small Python command line tools to solve
problems I actually run into, with no extra dependencies, real docs, and an MIT
license. A lot come out of my reselling side business, like an image search that
identifies a product and finds where it’s selling.
</p>
<p class="section-sub">
When I’m not coding I’m on the bench with a microcontroller. That led to
two finished builds, an LCD temperature alarm I use for car detailing and a two
player reaction game. Demos are in projects.
</p>
<div class="term fetch-card">
<div class="term-bar">
<span class="term-dot red"></span><span class="term-dot yellow"></span><span class="term-dot green"></span>
<span class="term-title">daniel@darcodev — fetch</span>
</div>
<div class="term-body">
<dl class="fetch-list">
<dt>user</dt><dd>daniel@darcodev</dd>
<dt>role</dt><dd>high_school_senior</dd>
<dt>focus</dt><dd>software <span class="amp">&&</span> hardware</dd>
<dt>lang</dt><dd>python</dd>
<dt>editor</dt><dd>vs code</dd>
<dt>shipped</dt><dd>2 clis · 2 builds · 1 on pypi</dd>
<dt>status</dt><dd><span class="status-dot" aria-hidden="true"></span> open_to_collab</dd>
</dl>
</div>
</div>
</div>
<div class="about-side reveal">
<div>
<h3 class="side-title">focus_areas</h3>
<ul class="focus-list">
<li><span class="arrow" aria-hidden="true">→</span> Python & CLI tooling</li>
<li><span class="arrow" aria-hidden="true">→</span> Reverse engineering & undocumented APIs</li>
<li><span class="arrow" aria-hidden="true">→</span> Hardware & electronics prototyping</li>
<li><span class="arrow" aria-hidden="true">→</span> Automation, IMAP, HTTP, browsers</li>
</ul>
</div>
<div>
<h3 class="side-title">tools</h3>
<ul class="tools-strip">
<li>Python</li><li>Selenium</li><li>undetected-chromedriver</li><li>requests</li>
<li>imaplib</li><li>GitHub Actions</li><li>PyPI</li><li>Git</li>
<li>Arduino</li><li>C++</li>
</ul>
</div>
<div>
<h3 class="side-title">availability</h3>
<p class="avail"><span class="status-dot" aria-hidden="true"></span> Open to collaboration</p>
<p class="avail-note">Good bug reports always welcome.</p>
</div>
</div>
</div>
</section>
<section class="section" id="log" tabindex="-1">
<div class="container">
<div class="section-head reveal">
<p class="eyebrow"><span class="prompt-char" aria-hidden="true">$</span> git log --oneline</p>
<h2><span class="title-prefix" aria-hidden="true">//</span><span class="title-num">03.</span> log</h2>
<p class="section-sub">Most recent milestones.</p>
</div>
<ol class="gitlog reveal">
<li>
<span class="log-star" aria-hidden="true">*</span>
<span class="log-date">2026-07</span>
<span class="log-msg">published <strong>chrome-lens-search</strong> to PyPI, reverse engineered Chromium’s Lens upload endpoint</span>
</li>
<li>
<span class="log-star" aria-hidden="true">*</span>
<span class="log-date">2026-07</span>
<span class="log-msg">built an <strong>LCD temperature alarm system</strong>, hardware</span>
</li>
<li>
<span class="log-star" aria-hidden="true">*</span>
<span class="log-date">2026-07</span>
<span class="log-msg">released <strong>email-cleaner</strong>, a zero dependency IMAP inbox cleaner</span>
</li>
<li>
<span class="log-star" aria-hidden="true">*</span>
<span class="log-date">2026-06</span>
<span class="log-msg">built a <strong>memory speed game</strong>, hardware</span>
</li>
<li class="log-todo">
<span class="log-star" aria-hidden="true">*</span>
<span class="log-date">TODO</span>
<span class="log-msg">next project, in progress</span>
</li>
</ol>
</div>
</section>
<section class="section" id="contact" tabindex="-1">
<div class="container">
<div class="contact-card reveal">
<p class="eyebrow"><span class="prompt-char" aria-hidden="true">$</span> ./contact --new</p>
<h2><span class="title-prefix" aria-hidden="true">//</span><span class="title-num">04.</span> let’s build something.</h2>
<p class="section-sub">Open to collaboration, interesting problems, and good bug reports.</p>
<div class="hero-actions">
<a class="btn btn-primary" href="mailto:saddannythemanny@gmail.com">
<svg viewBox="0 0 24 24" width="16" height="16" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="2" y="4" width="20" height="16" rx="2"/><path d="m22 7-10 6L2 7"/></svg>
email me
</a>
<a class="btn btn-ghost" href="https://github.com/darcodev" target="_blank" rel="noopener noreferrer">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor" aria-hidden="true"><path d="M12 .5C5.65.5.5 5.65.5 12c0 5.08 3.29 9.39 7.86 10.91.58.11.79-.25.79-.56 0-.27-.01-1.17-.02-2.12-3.2.7-3.87-1.36-3.87-1.36-.52-1.33-1.28-1.68-1.28-1.68-1.04-.71.08-.7.08-.7 1.15.08 1.76 1.18 1.76 1.18 1.03 1.76 2.69 1.25 3.35.96.1-.75.4-1.25.72-1.54-2.55-.29-5.24-1.28-5.24-5.68 0-1.26.45-2.28 1.18-3.09-.12-.29-.51-1.46.11-3.04 0 0 .96-.31 3.16 1.18a11 11 0 0 1 5.76 0c2.19-1.49 3.15-1.18 3.15-1.18.63 1.58.24 2.75.12 3.04.74.81 1.18 1.83 1.18 3.09 0 4.41-2.69 5.38-5.26 5.66.41.36.78 1.06.78 2.14 0 1.55-.01 2.79-.01 3.17 0 .31.21.68.8.56A11.52 11.52 0 0 0 23.5 12C23.5 5.65 18.35.5 12 .5Z"/></svg>
@darcodev
</a>
</div>
</div>
</div>
</section>
</main>
<div class="lightbox" id="lightbox" role="dialog" aria-modal="true" aria-label="Project photo and video gallery" hidden>
<div class="lb-backdrop" data-lb-close></div>
<div class="lb-frame">
<button class="lb-close" type="button" data-lb-close aria-label="Close gallery">
<svg viewBox="0 0 24 24" width="20" height="20" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M18 6 6 18M6 6l12 12"/></svg>
</button>
<button class="lb-nav lb-prev" type="button" data-lb-prev aria-label="Previous item">
<svg viewBox="0 0 24 24" width="26" height="26" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m15 18-6-6 6-6"/></svg>
</button>
<div class="lb-stage" id="lb-stage"></div>
<button class="lb-nav lb-next" type="button" data-lb-next aria-label="Next item">
<svg viewBox="0 0 24 24" width="26" height="26" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m9 18 6-6-6-6"/></svg>
</button>
<div class="lb-bar">
<span class="lb-counter" id="lb-counter"></span>
<div class="lb-thumbs" id="lb-thumbs"></div>
</div>
</div>
</div>
<footer class="footer">
<div class="container footer-inner">
<p>© <span id="year">2026</span> darcodev · built by hand, no framework.</p>
<a href="#top" class="back-top">back to top ↑</a>
</div>
</footer>
<script src="script.js"></script>
</body>
</html>