Skip to content

Commit 7938565

Browse files
author
Said Elimam
committed
Update portfolio links, enhance archive layout, and implement git blame design for footer
1 parent 3ef936e commit 7938565

2 files changed

Lines changed: 298 additions & 87 deletions

File tree

index.html

Lines changed: 102 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -26,32 +26,32 @@
2626

2727
<!-- Open Graph / Facebook -->
2828
<meta property="og:type" content="website">
29-
<meta property="og:url" content="https://devcompack.github.io/">
29+
<meta property="og:url" content="https://dev.saidelimam.com/">
3030
<meta property="og:title" content="Said Elimam | Public Dev Projects">
3131
<meta property="og:description" content="Portfolio of Said Elimam - Public development projects including GoCollab.cc, DCP Setup Maker, Portfolio Template, and more.">
32-
<meta property="og:image" content="https://devcompack.github.io/favicon.png">
32+
<meta property="og:image" content="https://dev.saidelimam.com/favicon.png">
3333
<meta property="og:site_name" content="Said Elimam Portfolio">
3434
<meta property="og:locale" content="en_US">
3535

3636
<!-- Twitter -->
3737
<meta name="twitter:card" content="summary_large_image">
38-
<meta name="twitter:url" content="https://devcompack.github.io/">
38+
<meta name="twitter:url" content="https://dev.saidelimam.com/">
3939
<meta name="twitter:title" content="Said Elimam | Public Dev Projects">
4040
<meta name="twitter:description" content="Portfolio of Said Elimam - Public development projects including GoCollab.cc, DCP Setup Maker, Portfolio Template, and more.">
41-
<meta name="twitter:image" content="https://devcompack.github.io/favicon.png">
41+
<meta name="twitter:image" content="https://dev.saidelimam.com/favicon.png">
4242

4343
<!-- Additional Meta Tags -->
4444
<meta name="theme-color" content="#0a0e27">
4545
<meta name="msapplication-TileColor" content="#0a0e27">
46-
<link rel="canonical" href="https://devcompack.github.io/">
46+
<link rel="canonical" href="https://dev.saidelimam.com/">
4747

4848
<!-- Structured Data (JSON-LD) -->
4949
<script type="application/ld+json">
5050
{
5151
"@context": "https://schema.org",
5252
"@type": "Person",
5353
"name": "Said Elimam",
54-
"url": "https://devcompack.github.io/",
54+
"url": "https://dev.saidelimam.com/",
5555
"sameAs": [
5656
"https://saidelimam.com",
5757
"https://github.com/saidelimam"
@@ -64,7 +64,7 @@
6464
}
6565
</script>
6666

67-
<script>
67+
<script defer>
6868
(function (i, s, o, g, r, a, m) {
6969
i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () {
7070
(i[r].q = i[r].q || []).push(arguments)
@@ -74,7 +74,6 @@
7474

7575
ga('create', 'UA-51359241-3', 'auto');
7676
ga('send', 'pageview');
77-
7877
</script>
7978
</head>
8079

@@ -106,7 +105,7 @@ <h1 class="subtitle">
106105
</span>
107106
<a href="https://simt.app" class="card-image">
108107
<div class="card-image-wrapper">
109-
<img alt="SIMT logo" src="images/simt.png">
108+
<img alt="SIMT logo" src="images/simt.png" width="140" height="140" loading="eager" fetchpriority="high">
110109
</div>
111110
</a>
112111
<div class="card-content">
@@ -132,7 +131,7 @@ <h2 class="card-title">
132131
</span>
133132
<a href="https://github.com/saidelimam/portfolio" class="card-image">
134133
<div class="card-image-wrapper">
135-
<img alt="Portfolio Template logo" src="images/portfolio.webp">
134+
<img alt="Portfolio Template logo" src="images/portfolio.webp" width="140" height="140" loading="eager">
136135
</div>
137136
</a>
138137
<div class="card-content">
@@ -165,7 +164,7 @@ <h2 class="card-title">
165164
</span>
166165
<a href="https://www.gocollab.cc" class="card-image">
167166
<div class="card-image-wrapper">
168-
<img alt="GoCollab logo" src="images/gocollab.ico">
167+
<img alt="GoCollab logo" src="images/gocollab.ico" width="140" height="140" loading="eager">
169168
</div>
170169
</a>
171170
<div class="card-content">
@@ -204,7 +203,7 @@ <h2 class="card-title">
204203
</span>
205204
<a href="http://dev.saidelimam.com/setupmaker/" class="card-image">
206205
<div class="card-image-wrapper">
207-
<img alt="DCP Setup Maker logo" src="images/setupmaker.png">
206+
<img alt="DCP Setup Maker logo" src="images/setupmaker.png" width="140" height="140" loading="lazy">
208207
</div>
209208
</a>
210209
<div class="card-content">
@@ -243,101 +242,124 @@ <h2 class="card-title">
243242
</svg>
244243
</button>
245244
<div class="archive-content" id="archiveContent">
246-
<div class="cards-container">
247-
<div class="card" data-status="aborted">
248-
<span class="card-label label-aborted">
249-
<span class="status-dot"></span>aborted
250-
</span>
251-
<a href="https://github.com/RoleSwitch" class="card-image">
252-
<div class="card-image-wrapper">
253-
<img alt="RoleSwitch logo" src="images/roleswitch.png">
245+
<ul class="archive-list">
246+
<li class="archive-item" data-status="aborted">
247+
<div class="archive-item-content">
248+
<div class="archive-item-header">
249+
<div class="archive-item-left">
250+
<img alt="RoleSwitch logo" src="images/roleswitch.png" width="40" height="40" loading="lazy" class="archive-logo">
251+
<h3 class="archive-item-title">
252+
<a href="https://github.com/RoleSwitch">RoleSwitch</a>
253+
</h3>
254+
<span class="archive-status label-aborted">
255+
<span class="status-dot"></span>aborted
256+
</span>
257+
<span class="archive-year">2015</span>
258+
</div>
254259
</div>
255-
</a>
256-
<div class="card-content">
257-
<div class="card-header">
258-
<h2 class="card-title">
259-
<a href="https://github.com/RoleSwitch">RoleSwitch</a>
260-
</h2>
261-
<span class="card-year">2015</span>
262-
</div>
263-
<p class="card-description">Role-Playing Social Network project.</p>
264-
<a href="https://github.com/RoleSwitch" class="card-link">
265-
<span>View Source</span>
266-
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
260+
<p class="archive-description">Role-Playing Social Network project.</p>
261+
<a href="https://github.com/RoleSwitch" class="archive-link">
262+
View Source
263+
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
267264
<path d="M6 12L10 8L6 4" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
268265
</svg>
269266
</a>
270267
</div>
271-
</div>
268+
</li>
272269

273-
<div class="card" data-status="aborted">
274-
<span class="card-label label-aborted">
275-
<span class="status-dot"></span>aborted
276-
</span>
277-
<a href="https://github.com/HumInAct" class="card-image">
278-
<div class="card-image-wrapper">
279-
<img alt="HumInAct logo" src="images/huminact_logo.png">
270+
<li class="archive-item" data-status="aborted">
271+
<div class="archive-item-content">
272+
<div class="archive-item-header">
273+
<div class="archive-item-left">
274+
<img alt="HumInAct logo" src="images/huminact_logo.png" width="40" height="40" loading="lazy" class="archive-logo">
275+
<h3 class="archive-item-title">
276+
<a href="https://github.com/HumInAct">HumInAct</a>
277+
</h3>
278+
<span class="archive-status label-aborted">
279+
<span class="status-dot"></span>aborted
280+
</span>
281+
<span class="archive-year">2015</span>
282+
</div>
280283
</div>
281-
</a>
282-
<div class="card-content">
283-
<div class="card-header">
284-
<h2 class="card-title">
285-
<a href="https://github.com/HumInAct">HumInAct</a>
286-
</h2>
287-
<span class="card-year">2015</span>
288-
</div>
289-
<p class="card-description">Artificial Intelligence project to simulate brain memory using NLP.</p>
290-
<a href="https://github.com/HumInAct" class="card-link">
291-
<span>View Source</span>
292-
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
284+
<p class="archive-description">Artificial Intelligence project to simulate brain memory using NLP.</p>
285+
<a href="https://github.com/HumInAct" class="archive-link">
286+
View Source
287+
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
293288
<path d="M6 12L10 8L6 4" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
294289
</svg>
295290
</a>
296291
</div>
297-
</div>
292+
</li>
298293

299-
<div class="card" data-status="abandoned">
300-
<span class="card-label label-abandoned">
301-
<span class="status-dot"></span>abandoned
302-
</span>
303-
<a href="https://sourceforge.net/projects/graphmake/" class="card-image">
304-
<div class="card-image-wrapper">
305-
<img alt="GraphMake logo" src="images/graphmake_logo.jpg">
306-
</div>
307-
</a>
308-
<div class="card-content">
309-
<div class="card-header">
310-
<h2 class="card-title">
311-
<a href="https://sourceforge.net/projects/graphmake/">GraphMake</a>
312-
</h2>
313-
<span class="card-year">2010</span>
294+
<li class="archive-item" data-status="abandoned">
295+
<div class="archive-item-content">
296+
<div class="archive-item-header">
297+
<div class="archive-item-left">
298+
<img alt="GraphMake logo" src="images/graphmake_logo.jpg" width="40" height="40" loading="lazy" class="archive-logo">
299+
<h3 class="archive-item-title">
300+
<a href="https://sourceforge.net/projects/graphmake/">GraphMake</a>
301+
</h3>
302+
<span class="archive-status label-abandoned">
303+
<span class="status-dot"></span>abandoned
304+
</span>
305+
<span class="archive-year">2010</span>
306+
</div>
314307
</div>
315-
<p class="card-description">Free Open-Source Software, for making graphs, and scheduling projects.</p>
316-
<a href="https://sourceforge.net/projects/graphmake/" class="card-link">
317-
<span>Download</span>
318-
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
308+
<p class="archive-description">Free Open-Source Software, for making graphs, and scheduling projects.</p>
309+
<a href="https://sourceforge.net/projects/graphmake/" class="archive-link">
310+
Download
311+
<svg width="14" height="14" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
319312
<path d="M6 12L10 8L6 4" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
320313
</svg>
321314
</a>
322315
</div>
323-
</div>
324-
</div>
316+
</li>
317+
</ul>
325318
</div>
326319
</div>
327320
</div>
328321

329322
<footer class="footer">
330323
<div class="footer-content">
331-
<p class="footer-text">
332-
<span class="code-comment">//</span> &copy; <span id="current-year"></span> Created by <a href="https://saidelimam.com" class="footer-link">Said Elimam</a>
333-
</p>
324+
<div class="git-blame">
325+
<div class="git-blame-line">
326+
<span class="git-blame-hash">^<span id="commit-hash">a1b2c3d</span></span>
327+
<span class="git-blame-line-number">1</span>
328+
<span class="git-blame-filename">index.html</span>
329+
<span class="git-blame-author">
330+
<a href="https://saidelimam.com" class="footer-link">Said Elimam</a>
331+
</span>
332+
<span class="git-blame-date">
333+
(<span id="current-year"></span>-01-27)
334+
</span>
335+
<span class="git-blame-message">// Committed by Said Elimam</span>
336+
</div>
337+
</div>
334338
</div>
335339
</footer>
336340
</div>
337341

338342
<script>
339-
// Set current year for copyright
340-
document.getElementById('current-year').textContent = new Date().getFullYear();
343+
// Set current year for copyright and git blame
344+
const currentYear = new Date().getFullYear();
345+
const currentYearEl = document.getElementById('current-year');
346+
if (currentYearEl) {
347+
currentYearEl.textContent = currentYear;
348+
}
349+
350+
// Generate a simple commit hash-like string
351+
function generateCommitHash() {
352+
const chars = '0123456789abcdef';
353+
let hash = '';
354+
for (let i = 0; i < 7; i++) {
355+
hash += chars[Math.floor(Math.random() * chars.length)];
356+
}
357+
return hash;
358+
}
359+
const commitHashEl = document.getElementById('commit-hash');
360+
if (commitHashEl) {
361+
commitHashEl.textContent = generateCommitHash();
362+
}
341363

342364
// Archive toggle functionality
343365
document.addEventListener('DOMContentLoaded', function() {
@@ -355,7 +377,7 @@ <h2 class="card-title">
355377
});
356378
</script>
357379

358-
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-7816663811120927"
380+
<script async defer src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-7816663811120927"
359381
crossorigin="anonymous"></script>
360382
</body>
361383

0 commit comments

Comments
 (0)