Skip to content

Commit bba6a75

Browse files
author
Abderrahman EL OUALI
committed
refactor web site 2026
1 parent e436ace commit bba6a75

35 files changed

Lines changed: 3011 additions & 1650 deletions

.github/workflows/site-quality.yml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Site Quality
2+
3+
on:
4+
push:
5+
branches: ["main", "master"]
6+
pull_request:
7+
8+
jobs:
9+
html-lint:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v4
13+
- uses: actions/setup-node@v4
14+
with:
15+
node-version: 20
16+
- name: Run HTMLHint
17+
run: |
18+
npm --yes install htmlhint
19+
npx htmlhint "**/*.html"
20+
21+
links:
22+
runs-on: ubuntu-latest
23+
steps:
24+
- uses: actions/checkout@v4
25+
- name: Check links
26+
uses: lycheeverse/lychee-action@v2
27+
with:
28+
args: >-
29+
--verbose
30+
--no-progress
31+
--exclude-mail
32+
--accept 200,429
33+
"**/*.html"
34+
env:
35+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}

.htmlhintrc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"tag-pair": true,
3+
"tagname-lowercase": false,
4+
"attr-lowercase": true,
5+
"attr-value-double-quotes": true,
6+
"doctype-first": false,
7+
"id-unique": true,
8+
"spec-char-escape": false
9+
}

404.html

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<!doctype html>
2+
<html lang="fr">
3+
<head>
4+
<meta charset="utf-8" />
5+
<meta name="viewport" content="width=device-width, initial-scale=1" />
6+
<title>404 - Page non trouvee</title>
7+
<meta name="description" content="La page demandee est introuvable. Retournez a l'accueil du portfolio." />
8+
<link rel="canonical" href="https://elouali.github.io/404.html" />
9+
<style>
10+
body { margin:0; min-height:100vh; display:grid; place-items:center; font-family:Arial,sans-serif; background:#0b1220; color:#e2e8f0; }
11+
.card { max-width:640px; padding:28px; border:1px solid #334155; border-radius:14px; background:#111827; text-align:center; }
12+
a { color:#38bdf8; text-decoration:none; font-weight:600; }
13+
</style>
14+
</head>
15+
<body>
16+
<div class="card">
17+
<h1>404</h1>
18+
<p>La page demandee est introuvable.</p>
19+
<p><a href="/pages/index.html">Retour a l'accueil</a></p>
20+
</div>
21+
</body>
22+
</html>
23+

README.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,10 @@ Le site est publie via GitHub Pages sur:
2828
| |- about.html
2929
| |- experiences.html
3030
| |- articles.html
31-
| |- projets-hub.html
32-
| |- projets-data.html
33-
| |- projets-archi.html
34-
| |- projets-dev.html
31+
| |- projects-hub.html
32+
| |- projects-data.html
33+
| |- projects-archi.html
34+
| |- projects-dev.html
3535
| |- projects/
3636
| |- project-*.html
3737
| |- data_analyse_ocp.html
@@ -68,9 +68,9 @@ Les pages projets utilisent une base commune:
6868
1. Dupliquer `pages/projects/project-template.html` vers `pages/projects/project-<nom>.html`.
6969
2. Remplir les sections (hero, meta, slider, contexte, solution, resultats).
7070
3. Ajouter la carte/lien du projet dans la page categorie correspondante:
71-
- `pages/projets-data.html`
72-
- `pages/projets-archi.html`
73-
- `pages/projets-dev.html`
71+
- `pages/projects-data.html`
72+
- `pages/projects-archi.html`
73+
- `pages/projects-dev.html`
7474
4. Verifier l affichage desktop + mobile.
7575

7676
## Developpement local
@@ -117,3 +117,4 @@ Voir `LICENSE.txt`.
117117

118118

119119

120+

favicon.png

184 KB
Loading

index.html

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,7 @@
66
<meta http-equiv="refresh" content="0; url=pages/index.html" />
77
<link rel="canonical" href="pages/index.html" />
88
<title>Redirection...</title>
9-
<script>
10-
window.location.replace('pages/index.html');
11-
</script>
9+
<script>window.location.replace('pages/index.html');</script>
1210
</head>
1311
<body>
1412
<p>Redirection vers <a href="pages/index.html">pages/index.html</a>...</p>

pages/about.html

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,22 @@
55
<meta charset="utf-8" />
66
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
77

8-
<link rel="stylesheet" href="../assets/css/main.css" />
8+
9+
<!-- SEO START -->
10+
<meta name="description" content="Portfolio personnel: experiences, projets data/cloud/dev et articles techniques." />
11+
<link rel="canonical" href="https://elouali.github.io/pages/about.html" />
12+
13+
<meta property="og:type" content="website" />
14+
<meta property="og:title" content="À Propos - Abderrahman El Ouali" />
15+
<meta property="og:description" content="Portfolio personnel: experiences, projets data/cloud/dev et articles techniques." />
16+
<meta property="og:url" content="https://elouali.github.io/pages/about.html" />
17+
<meta property="og:image" content="https://elouali.github.io/assets/images/logo.jpg" />
18+
19+
<meta name="twitter:card" content="summary_large_image" />
20+
<meta name="twitter:title" content="À Propos - Abderrahman El Ouali" />
21+
<meta name="twitter:description" content="Portfolio personnel: experiences, projets data/cloud/dev et articles techniques." />
22+
<meta name="twitter:image" content="https://elouali.github.io/assets/images/logo.jpg" />
23+
<!-- SEO END --><link rel="stylesheet" href="../assets/css/main.css" />
924

1025
<link rel="preconnect" href="https://fonts.googleapis.com">
1126
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@@ -255,7 +270,7 @@
255270
<li><a href="index.html">Accueil</a></li>
256271
<li><a href="about.html">À Propos</a></li>
257272
<li><a href="experiences.html">Expériences</a></li>
258-
<li><a href="projets-hub.html">Projets</a></li>
273+
<li><a href="projects-hub.html">Projets</a></li>
259274
<li><a href="articles.html">Articles</a></li>
260275
<li><a href="index.html#footer">Contact</a></li>
261276
</ul>
@@ -266,7 +281,7 @@
266281
<section id="header">
267282
<div class="container">
268283
<div id="logo">
269-
<img src="../assets/images/logo.jpg" alt="Abderrahman El Ouali" />
284+
<img loading="lazy" decoding="async" src="../assets/images/logo.jpg" alt="Abderrahman El Ouali" />
270285
<h1><a href="index.html">Abderrahman El Ouali</a></h1>
271286
</div>
272287
<div class="menu-toggle" id="menu-btn">
@@ -286,7 +301,7 @@ <h1>L'Ingénieur derrière la Data</h1>
286301

287302
<div class="about-image">
288303
<div class="image-card">
289-
<img src="../assets/images/IMG_0318.jpg" alt="Portrait Abderrahman El Ouali" />
304+
<img loading="lazy" decoding="async" src="../assets/images/IMG_0318.jpg" alt="Portrait Abderrahman El Ouali" />
290305
</div>
291306
</div>
292307

@@ -399,3 +414,7 @@ <h2 class="reveal" style="color: #fff;">Langues & Communication</h2>
399414
</html>
400415

401416

417+
418+
419+
420+

pages/articles.html

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,22 @@
55
<meta charset="utf-8" />
66
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
77

8-
<link rel="stylesheet" href="../assets/css/main.css" />
8+
9+
<!-- SEO START -->
10+
<meta name="description" content="Articles & Publications - Portfolio personnel avec experiences, projets techniques et realisations." />
11+
<link rel="canonical" href="https://elouali.github.io/pages/articles.html" />
12+
13+
<meta property="og:type" content="website" />
14+
<meta property="og:title" content="Articles & Publications - Abderrahman El Ouali" />
15+
<meta property="og:description" content="Articles & Publications - Portfolio personnel avec experiences, projets techniques et realisations." />
16+
<meta property="og:url" content="https://elouali.github.io/pages/articles.html" />
17+
<meta property="og:image" content="https://elouali.github.io/assets/images/logo.jpg" />
18+
19+
<meta name="twitter:card" content="summary_large_image" />
20+
<meta name="twitter:title" content="Articles & Publications - Abderrahman El Ouali" />
21+
<meta name="twitter:description" content="Articles & Publications - Portfolio personnel avec experiences, projets techniques et realisations." />
22+
<meta name="twitter:image" content="https://elouali.github.io/assets/images/logo.jpg" />
23+
<!-- SEO END --><link rel="stylesheet" href="../assets/css/main.css" />
924

1025
<link rel="preconnect" href="https://fonts.googleapis.com">
1126
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@@ -260,7 +275,7 @@
260275
<li><a href="index.html">Accueil</a></li>
261276
<li><a href="about.html">À Propos</a></li>
262277
<li><a href="experiences.html">Expériences</a></li>
263-
<li><a href="projets-hub.html">Projets</a></li>
278+
<li><a href="projects-hub.html">Projets</a></li>
264279
<li><a href="articles.html">Articles</a></li>
265280
<li><a href="index.html#footer">Contact</a></li>
266281
</ul>
@@ -271,7 +286,7 @@
271286
<section id="header">
272287
<div class="container">
273288
<div id="logo">
274-
<img src="../assets/images/logo.jpg" alt="Abderrahman El Ouali" />
289+
<img loading="lazy" decoding="async" src="../assets/images/logo.jpg" alt="Abderrahman El Ouali" />
275290
<h1><a href="index.html">Abderrahman El Ouali</a></h1>
276291
</div>
277292
<div class="menu-toggle" id="menu-btn">
@@ -294,7 +309,7 @@ <h1>Articles & Publications</h1>
294309
<div class="article-card reveal">
295310
<div class="article-image">
296311
<a href="https://www.linkedin.com/feed/update/urn:li:activity:7341031474529198080/" target="_blank">
297-
<img src="../assets/images/article-fiabilite.png" alt="Fiabilité en Aéronautique">
312+
<img loading="lazy" decoding="async" src="../assets/images/article-fiabilite.png" alt="Fiabilité en Aéronautique">
298313
</a>
299314
</div>
300315
<div class="article-content">
@@ -308,7 +323,7 @@ <h3 class="article-title">Fiabilité en Aéronautique : L'Importance de la Quali
308323
<div class="article-card reveal" style="transition-delay: 0.1s;">
309324
<div class="article-image">
310325
<a href="https://www.linkedin.com/feed/update/urn:li:activity:7237577571079532544/" target="_blank">
311-
<img src="../assets/images/offre.png" alt="Internship Offer">
326+
<img loading="lazy" decoding="async" src="../assets/images/offre.png" alt="Internship Offer">
312327
</a>
313328
</div>
314329
<div class="article-content">
@@ -321,7 +336,7 @@ <h3 class="article-title">Here we go! : Internship Offer</h3>
321336

322337
<div class="article-card reveal" style="transition-delay: 0.2s;">
323338
<div class="article-image">
324-
<img src="../assets/images/new.jpg" alt="Prochainement" style="opacity: 0.5;">
339+
<img loading="lazy" decoding="async" src="../assets/images/new.jpg" alt="Prochainement" style="opacity: 0.5;">
325340
</div>
326341
<div class="article-content">
327342
<span class="article-date" style="color:var(--text-secondary);">Prochainement</span>
@@ -392,3 +407,7 @@ <h3 class="article-title">Nouvel Article Technique</h3>
392407
</html>
393408

394409

410+
411+
412+
413+

pages/experiences.html

Lines changed: 28 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,22 @@
55
<meta charset="utf-8" />
66
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
77

8-
<link rel="stylesheet" href="../assets/css/main.css" />
8+
9+
<!-- SEO START -->
10+
<meta name="description" content="Expériences - Portfolio personnel avec experiences, projets techniques et realisations." />
11+
<link rel="canonical" href="https://elouali.github.io/pages/experiences.html" />
12+
13+
<meta property="og:type" content="website" />
14+
<meta property="og:title" content="Expériences - Abderrahman El Ouali" />
15+
<meta property="og:description" content="Expériences - Portfolio personnel avec experiences, projets techniques et realisations." />
16+
<meta property="og:url" content="https://elouali.github.io/pages/experiences.html" />
17+
<meta property="og:image" content="https://elouali.github.io/assets/images/logo.jpg" />
18+
19+
<meta name="twitter:card" content="summary_large_image" />
20+
<meta name="twitter:title" content="Expériences - Abderrahman El Ouali" />
21+
<meta name="twitter:description" content="Expériences - Portfolio personnel avec experiences, projets techniques et realisations." />
22+
<meta name="twitter:image" content="https://elouali.github.io/assets/images/logo.jpg" />
23+
<!-- SEO END --><link rel="stylesheet" href="../assets/css/main.css" />
924

1025
<link rel="preconnect" href="https://fonts.googleapis.com">
1126
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@@ -267,7 +282,7 @@
267282
<li><a href="index.html">Accueil</a></li>
268283
<li><a href="about.html">À Propos</a></li>
269284
<li><a href="experiences.html">Expériences</a></li>
270-
<li><a href="projets-hub.html">Projets</a></li>
285+
<li><a href="projects-hub.html">Projets</a></li>
271286
<li><a href="articles.html">Articles</a></li>
272287
<li><a href="index.html#footer">Contact</a></li>
273288
</ul>
@@ -278,7 +293,7 @@
278293
<section id="header">
279294
<div class="container">
280295
<div id="logo">
281-
<img src="../assets/images/logo.jpg" alt="Abderrahman El Ouali" />
296+
<img loading="lazy" decoding="async" src="../assets/images/logo.jpg" alt="Abderrahman El Ouali" />
282297
<h1><a href="index.html">Abderrahman El Ouali</a></h1>
283298
</div>
284299
<div class="menu-toggle" id="menu-btn">
@@ -300,7 +315,7 @@ <h1>Parcours Professionnel</h1>
300315

301316
<div class="timeline-item reveal">
302317
<div class="timeline-logo">
303-
<img src="../assets/images/logo-airbus.png" alt="Airbus">
318+
<img loading="lazy" decoding="async" src="../assets/images/logo-airbus.png" alt="Airbus">
304319
</div>
305320
<div class="timeline-content">
306321
<h3 class="role-title">Architecte de Solutions Informatiques (Stage)</h3>
@@ -309,7 +324,7 @@ <h3 class="role-title">Architecte de Solutions Informatiques (Stage)</h3>
309324
<span><i class="far fa-calendar-alt"></i> Mars 2025 - Sept. 2025</span>
310325
<span>
311326
<i class="fas fa-map-marker-alt"></i> Toulouse, France
312-
<img src="../assets/images/photo-france.png" alt="France" class="flag-inline">
327+
<img loading="lazy" decoding="async" src="../assets/images/photo-france.png" alt="France" class="flag-inline">
313328
</span>
314329
</div>
315330
<p>Modernisation et optimisation des infrastructures Data critiques pour l'ingénierie aéronautique.</p>
@@ -323,7 +338,7 @@ <h3 class="role-title">Architecte de Solutions Informatiques (Stage)</h3>
323338

324339
<div class="timeline-item reveal">
325340
<div class="timeline-logo">
326-
<img src="../assets/images/logo-ocp.png" alt="OCP Group">
341+
<img loading="lazy" decoding="async" src="../assets/images/logo-ocp.png" alt="OCP Group">
327342
</div>
328343
<div class="timeline-content">
329344
<h3 class="role-title">Data Analyst (Stage)</h3>
@@ -332,7 +347,7 @@ <h3 class="role-title">Data Analyst (Stage)</h3>
332347
<span><i class="far fa-calendar-alt"></i> Juil. 2024 - Sept. 2024</span>
333348
<span>
334349
<i class="fas fa-map-marker-alt"></i> Casablanca, Maroc
335-
<img src="../assets/images/photo-maroc.jpg" alt="Maroc" class="flag-inline">
350+
<img loading="lazy" decoding="async" src="../assets/images/photo-maroc.jpg" alt="Maroc" class="flag-inline">
336351
</span>
337352
</div>
338353
<p>Mise en place de solutions de maintenance prédictive pour optimiser la production industrielle.</p>
@@ -346,7 +361,7 @@ <h3 class="role-title">Data Analyst (Stage)</h3>
346361

347362
<div class="timeline-item reveal">
348363
<div class="timeline-logo">
349-
<img src="../assets/images/logo-webhelp.png" alt="Webhelp">
364+
<img loading="lazy" decoding="async" src="../assets/images/logo-webhelp.png" alt="Webhelp">
350365
</div>
351366
<div class="timeline-content">
352367
<h3 class="role-title">Développeur Java Full-Stack (Stage)</h3>
@@ -355,7 +370,7 @@ <h3 class="role-title">Développeur Java Full-Stack (Stage)</h3>
355370
<span><i class="far fa-calendar-alt"></i> Juil. 2021 - Août 2021</span>
356371
<span>
357372
<i class="fas fa-map-marker-alt"></i> Fès, Maroc
358-
<img src="../assets/images/photo-maroc.jpg" alt="Maroc" class="flag-inline">
373+
<img loading="lazy" decoding="async" src="../assets/images/photo-maroc.jpg" alt="Maroc" class="flag-inline">
359374
</span>
360375
</div>
361376
<p>Développement d'applications web robustes pour la gestion des ressources internes.</p>
@@ -429,3 +444,7 @@ <h3 class="role-title">Développeur Java Full-Stack (Stage)</h3>
429444

430445

431446

447+
448+
449+
450+

0 commit comments

Comments
 (0)