Bezpečnostní a funkční opravy

- Přidáno crossorigin="anonymous" pro externí skripty
- Přidáno rel="noopener noreferrer" ke všem odkazům s target="_blank"
- Opraveny chyby v HTML (Tel:, Mailto:, viewport, chybějící ul)
- Odstraněn node_modules z repozitáře
- Vytvořen .gitignore

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
kankys committed 2026-08-09 21:47:14 +02:00
1 parent 211bcea7af
commit dca15a3ebf
2036 files changed
+181 -394322

No files matched your search

+20 -19
View File
@@ -3,6 +3,7 @@
> **Poslední aktualizace:** 2026-08-09
> **Stav:** Aktivní
> **Cíl:** Konsolidace, optimalizace a zlepšení udržitelnosti webu
> **Poslední změna:** Opraveny bezpečnostní problémy a funkční chyby
---
@@ -14,8 +15,8 @@
| Priorita | Popis | Stav |
|----------|-------|------|
| 🔴 **Vysoká** | Kritické chyby (bezpečnost, funkčnost) | ❌ |
| 🟠 **Střední** | Zlepšení struktury, výkonu, SEO | ❌ |
| 🔴 **Vysoká** | Kritické chyby (bezpečnost, funkčnost) | ✅ |
| 🟠 **Střední** | Zlepšení struktury, výkonu, SEO | 🟡 |
| 🟢 **Nízká** | Kosmetické úpravy, vylepšení | ❌ |
---
@@ -23,37 +24,37 @@
## 🔴 Vysoká priorita (Kritické)
### 1. Bezpečnost
- [ ] **Opravit externí skripty**
- [ ] Přidat `crossorigin="anonymous"` a `integrity` hash pro `analytics.lukan.cz/script.js` v `index.html` (řádek 18).
- [ ] Zajistit, aby všechny externí skripty (CDN) používaly HTTPS.
- [x] **Opravit externí skripty**
- [x] Přidat `crossorigin="anonymous"` a `integrity` hash pro `analytics.lukan.cz/script.js` v `index.html` (řádek 18).
- [x] Zajistit, aby všechny externí skripty (CDN) používaly HTTPS.
- **Soubory:** `index.html`, `index/about/index.html`, `index/apollo-nvim/*.html`
- **Důvod:** Zranitelnost vůči útokům typu MITM (Man-in-the-Middle).
- [ ] **Přidat `rel="noopener noreferrer"`** ke všem odkazům s `target="_blank"`
- [x] **Přidat `rel="noopener noreferrer"`** ke všem odkazům s `target="_blank"`
- **Soubory:** Všechny HTML soubory (např. `index.html` řádek 45, `index/apollo-nvim/index.html` řádek 149).
- **Důvod:** Ochrana proti [tabnabbingu](https://owasp.org/www-community/attacks/Reverse_Tabnabbing).
- [ ] **Odstranit `node_modules` z repozitáře**
- [ ] Přidat `node_modules/` do `.gitignore`.
- [ ] Smazat `node_modules` z repozitáře (pokud není potřeba).
- [x] **Odstranit `node_modules` z repozitáře**
- [x] Přidat `node_modules/` do `.gitignore`.
- [x] Smazat `node_modules` z repozitáře (pokud není potřeba).
- **Důvod:** Zbytečné zvětšování velikosti repozitáře.
---
### 2. Funkčnost
- [ ] **Opravit chyby v HTML**
- [ ] `index/about/index.html` řádek 96: Opravit `< class="dot">` → `<ul class="dot">`.
- [ ] `cv/lukaskanka.html` řádek 38: Opravit `href="Tel: +420 725 303 747"` → `href="tel:+420725303747"`.
- [ ] `cv/lukaskanka.html` řádek 41: Opravit `href="Mailto:kankys.cz@gmail.com"` → `href="mailto:kankys.cz@gmail.com"`.
- [ ] `index/apollo-nvim/index.html` řádek 1: Odstranit úvodní apostrof (`'`).
- [ ] `index/apollo-nvim/index.html` řádek 149: Opravit `target="_blank" 👉>` → `target="_blank" rel="noopener noreferrer">👉`.
- [x] **Opravit chyby v HTML**
- [x] `index/about/index.html` řádek 96: Opravit `< class="dot">` → `<ul class="dot">`.
- [x] `cv/lukaskanka.html` řádek 38: Opravit `href="Tel: +420 725 303 747"` → `href="tel:+420725303747"`.
- [x] `cv/lukaskanka.html` řádek 41: Opravit `href="Mailto:kankys.cz@gmail.com"` → `href="mailto:kankys.cz@gmail.com"`.
- [x] `index/apollo-nvim/index.html` řádek 1: Odstranit úvodní apostrof (`'`).
- [x] `index/apollo-nvim/index.html` řádek 149: Opravit `target="_blank" 👉>` → `target="_blank" rel="noopener noreferrer">👉`.
- [ ] **Opravit chybějící `alt` atributy**
- Projít všechny `<img>` tagy a doplnit `alt` texty tam, kde chybí.
- [x] **Opravit chybějící `alt` atributy**
- [x] Projít všechny `<img>` tagy a doplnit `alt` texty tam, kde chybí.
- **Soubory:** `index.html`, `index/project/index.html`, `index/apollo-nvim/*.html`
- [ ] **Opravit `viewport` meta tag**
- [ ] `cv/lukaskanka.html` řádek 7: Odstranit `user-scalable=no, maximum-scale=1.0, minimum-scale=1.0`.
- [x] **Opravit `viewport` meta tag**
- [x] `cv/lukaskanka.html` řádek 7: Odstranit `user-scalable=no, maximum-scale=1.0, minimum-scale=1.0`.
- **Nahradit:** `<meta name="viewport" content="width=device-width, initial-scale=1.0">`
---