updateProject

This commit is contained in:
kankys committed 2026-09-17 22:42:50 +02:00
1 parent 8a2c5aabb7
commit 61f1c2f88a
2 files changed
+885 -34

No files matched your search

+337 -34
View File
@@ -1,42 +1,345 @@
# 💿 Každý den jedno album. 🎸 Denní hudební doporučení.
## 🎵 365 alb na celý rok
## 🤟 Prozkoumej historii rockové hudby.
Odkaz na [Denní Hudební Doporučení](https://music.lukan.cz)
# 🎸 Denní Hudební Doporučení: 365 Alb na Celý Rok 💿
**Co je nového:**
🎸 **Glitch animace** na nadpisu
- 📺 **Scanlines overlay** (jako starý TV)
- 🔴 **Červená záře** kolem alba card + pulzující border
- ⬇️ **Dynamický vstup** alba card při načtení
- 🌫️ **Staggered fade-up** archivních kartiček
- 🤘 **Metal styl tlačítek** s gradient červenou
- 🖼️ **Hover efekty** na obálkách alb
> **Každý den jedno ikonické grunge nebo nu-metal album. Prozkoumejte historii rockové hudby!**
🎸 Shrnutí přidaných efektů
[![Live Demo](https://img.shields.io/badge/Live-Demo-red?style=for-the-badge&logo=google-chrome)](https://music.lukan.cz)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Codeberg](https://img.shields.io/badge/Codeberg-Repo-blue?style=for-the-badge)](https://codeberg.org/Kankys/musicCalendar)
### 🖥️ Globální
- **Tmavý overlay** na pozadí — přes stávající fotku je přidán `rgba(0,0,0,0.6)` gradient, aby byl celý web temný a metal
- **Scanlines** — jemné horizontální čáry přes celou stránku pomocí `body::after`, působí jako starý TV/monitor (diskrétní, nepřekáží čtení)
---
### ✏️ Nadpis
- **Glitch animace** — každých 6 vteřin `h1` krátce "glitchne": červeno-azurový `text-shadow` + `skewX` transform, jako by byl špatný signál
## 🎵 O projektu
### 💿 Karta alba
- **Temné pozadí** s červeným borderem místo šedé
- **Vstupní animace** — karta "dopadne" z vrchu s mírnou rotací a blur efektem
- **Pulzující červená záře** — border a `box-shadow` plynule dýchají (tmavší → jasnější červená)
- **Hover efekt** — karta se zvedne + záře zesílí
- **Obálka alba** — na hover se mírně přiblíží a zvýší kontrast
**Denní Hudební Doporučení** je webová aplikace, která každý den nabízí jedno vybrané album z žánrů **grunge** a **nu-metal**. Projekt vznikl jako alternativa k algoritmickým doporučením streamovacích služeb, která nás uzavírají do bubliny známých skladeb.
### 📂 Archiv alb
- **Tmavé kartičky** s červeným hover borderem a glow
- **Staggered fade-up animace** — každá karta se vynoří o 60ms později než předchozí (vlnový efekt)
### 🎯 Hlavní cíle
- 🎶 **Každý den jedno album** - 365 alb na celý rok 2026
- 🔍 **Objevování hudby** - Méně známá, ale kvalitní alba
- 🎸 **Grunge & Nu-Metal** - Focus na ikonické žánry 90. let
- 💡 **Jednoduchost** - Žádné složité vyhledávání, jen čistý poslech
### 🔘 Tlačítka
- **Archiv** — tmavočervený gradient s červenou září
- **Footer** — temně fialový gradient
- **Tidal/Spotify/About** — tmavší, stylizovanější verze
### 🌟 Proč tento projekt?
> "Všimli jste si, jak nás algoritmy Spotify a dalších služeb neustále točí v kruhu? Nabízejí nám pořád to samé, co už známe. Řekl jsem si: to není pro mne. Chtěl jsem se vrátit k poslechu – od první do poslední skladby."
### 🎸 Logo
- **Červený `drop-shadow`** + na hover se zvětší a otočí
---
## ✨ Funkce
### 🎨 Design & UX
- 🖤 **Temný metalový vzhled** - Inspirován grunge a nu-metal estetikou
- ✨ **Glitch animace** - Dynamické efekty na nadpisech
- 🎭 **Pulzující prvky** - Červená záře kolem alb a tlačítek
- 📱 **Responsive design** - Optimalizováno pro všechny zařízení
- 🎯 **Staggered animace** - Vlnový efekt při načítání archivu
### 🔧 Technické vlastnosti
- ⚡ **Rychlé načítání** - Žádné externí API, vše lokálně
- 🗓️ **Automatické datum** - Zobrazení alba pro aktuální den
- 📚 **Archiv alb** - Prohlížení minulých doporučení
- 🔗 **Streaming integrace** - Přímé odkazy na Tidal a Spotify
- 📊 **Vlastní analytics** - Bez externího trackingu
---
## 🚀 Rychlý start
### 🌐 Online verze
Aplikaci můžete vyzkoušet přímo online:
👉 [https://music.lukan.cz](https://music.lukan.cz)
### 💻 Lokální spuštění
#### Požadavky
- Moderní webový prohlížeč (Chrome, Firefox, Edge, Safari)
- Žádné další závislosti - aplikace běží čistě v prohlížeči
#### Spuštění
1. Naklonujte repozitář:
```bash
git clone https://codeberg.org/Kankys/musicCalendar.git
cd musicCalendar
```
2. Otevřete hlavní stránku ve svém prohlížeči:
```bash
# Na Linuxu/Macu
xdg-open web/index.html # nebo open web/index.html
# Na Windows
start web/index.html
```
3. Nebo spusťte jednoduchý server:
```bash
# Python 3
python3 -m http.server 8000 --directory web
# Node.js (npx)
npx serve web
```
Pak navštivte: [http://localhost:8000](http://localhost:8000)
---
## 📁 Struktura projektu
```
musicCalendar/
├── web/ # Hlavní webová aplikace
│ ├── index.html # Hlavní stránka
│ ├── about.html # O projektu
│ ├── gdpr.html # Ochrana soukromí
│ ├── script.js # Hlavní logika
│ ├── scriptabout.js # Logika pro about stránku
│ ├── musicData.js # Databáze 365 alb
│ ├── style.css # Hlavní styly
│ └── img/ # Obrázky
│ ├── 4525586.jpg # Pozadí
│ ├── electric-guitar_12494348.png # Favicon
│ └── vyzva-EDIT.jpg # Logo
├── test/ # Testy (Playwright)
│ ├── tests/
│ │ └── homePage.test.ts
│ ├── assets/pages/
│ │ └── HomePage.ts
│ └── package.json
├── .htaccess # HTTPS přesměrování
├── LICENSE # MIT License
├── README.md # Tento soubor
└── DOCUMENTATION.md # Komplexní dokumentace
```
---
## 🎵 Databáze alb
### 📊 Statistiky
- **Počet alb**: 365 (pro celý rok 2026)
- **Datumové rozpětí**: 1. ledna 2026 - 31. prosince 2026
- **Soubor**: `web/musicData.js` (4011 řádků)
### 🎯 Žánry a umělci
#### Grunge
Nirvana, Pearl Jam, Soundgarden, Alice in Chains, Stone Temple Pilots, Mudhoney, Temple of the Dog
#### Nu-Metal
Korn, Limp Bizkit, Linkin Park, Slipknot, System of a Down, Deftones, Papa Roach, Disturbed
#### Alternativní Metal
Tool, Primus, Helmet, Faith No More, Rage Against the Machine
#### Méně známé kapely
World Eaters, Relative Ash, Factory 81, Shuvel, NO One, Sw1tched, Twisted Method, Spike 1000, Boy Hits Car
### 📋 Struktura alba
```javascript
{
datum: "2026-01-01", // Datum ve formátu YYYY-MM-DD
umelec: "🎤 World Eaters", // Název kapely
nazev: "💿 Hounds of Blood", // Název alba
img: "URL k obálce", // Obrázek alba
vydano: "01.2025", // Datum vydání
recenze: "Popis alba...", // Recenze/doporučení
tidal: "URL na Tidal", // Odkaz na Tidal
spotify: "URL na Spotify" // Odkaz na Spotify
}
```
---
## 🔧 Technické detaily
### 🌐 Technologický stack
- **Frontend**: HTML5, CSS3, JavaScript (ES6+)
- **Design**: Responsive CSS, CSS Animations
- **Testování**: Playwright + TypeScript
- **Hosting**: VPS (VPSfree.cz)
- **Doména**: music.lukan.cz
### 🎨 Designové prvky
#### Barevná paleta
| Barva | Hex | Použití |
|-------|-----|---------|
| Tmavě červená | #8b0000 | Primární barva, bordery |
| Jasně červená | #cc0000 | Akcenty, hover efekty |
| Tmavě fialová | #2a0033 | Footer, sekundární prvky |
| Světle šedá | #e0e0e0 | Text, nadpisy |
| Středně šedá | #b0b0b0 | Vedlejší text |
#### Animace
- **Glitch efekt** na hlavním nadpise (každých 6 vteřin)
- **Pulzující border** na kartách alb
- **Staggered fade-up** pro archivní kartičky
- **Hover efekty** na všech interaktivních prvcích
- **Scanlines overlay** - starý TV efekt
---
## 🧪 Testování
### 🔧 Testovací framework
- **Playwright** - Moderní E2E testování
- **TypeScript** - Typová bezpečnost
- **Page Object Model** - Strukturovaný přístup
### 🚀 Spuštění testů
#### Lokálně
```bash
cd test
npm install
npm test
```
#### Na produkci
```bash
cd test
BASE_URL=https://music.lukan.cz npm run test:prod
```
### 📋 Aktuální testy
- ✅ Test titulu hlavní stránky
- ✅ Test URL hlavní stránky
- 🔜 Plánované: Test archivu, about stránky, responsive designu
---
## 📦 Nasazení
### 🌐 Produkční prostředí
- **URL**: [https://music.lukan.cz](https://music.lukan.cz)
- **Hosting**: VPSfree.cz
- **Protokol**: HTTPS (vynuceno přes .htaccess)
- **Server**: Apache s mod_rewrite
### 🚀 Deploy proces
1. **Vývoj**: Lokální úpravy
2. **Testování**: Spuštění Playwright testů
3. **Commit**: Uložení změn do Git
4. **Push**: Odeslání na Codeberg
5. **Nasazení**: Ruční kopírování na VPS
### 🔄 Automatizace (plánované)
- CI/CD pipeline
- Automatické testování před deployem
- Monitorování dostupnosti
---
## 🔒 Bezpečnost & GDPR
### ✅ Bezpečnostní opatření
- **HTTPS** - Vynuceno pro všechny požadavky
- **Žádné cookies** - Aplikace neukládá žádná cookies
- **Žádný tracking** - Nepoužívá Google Analytics, Facebook Pixel
- **Lokální běh** - Všechny výpočty v prohlízeči
- **Minimální data** - Pouze základní serverové logy
### 📜 GDPR Compliance
- **Transparence** - Jasné informace o sběru dat
- **Minimalizace** - Sbírá se pouze nezbytná data
- **Žádný skrytý sběr** - Vše je jasně deklarováno
- **Právo na zapomenutí** - Uživatelé mohou požádat o smazání
### 🔗 Externí služby
- **Tidal** - Externí odkazy (data sbírána Tidalem)
- **Spotify** - Externí odkazy (data sbírána Spotify)
- **Analytics** - Vlastní systém (analytics.lukan.cz)
---
## 📈 Roadmap
### 🎯 Krátkodobé cíle (1-3 měsíce)
- [ ] Vylepšené E2E testy
- [ ] CI/CD pipeline
- [ ] Monitorování dostupnosti
- [ ] Optimalizace obrázků (lazy loading)
- [ ] PWA podpora (Progressive Web App)
### 🎯 Střednědobé cíle (3-6 měsíců)
- [ ] Uživatelské účty
- [ ] Systém hodnocení alb
- [ ] Vyhledávání v databázi
- [ ] Filtrování podle žánru/roku
- [ ] REST API pro přístup k datům
### 🎯 Dlouhodobé cíle (6-12 měsíců)
- [ ] Mobilní aplikace (iOS/Android)
- [ ] Integrace se streamovacími službami
- [ ] Komunitní funkce (fórum, sdílení)
- [ ] Mezinárodní verze (překlady)
- [ ] Rozšíření databáze (další žánry/roky)
---
## 🤝 Přispění
### 📝 Jak přispět
1. **Nahlásit chybu** - Vytvořte [Issue](https://codeberg.org/Kankys/musicCalendar/issues)
2. **Navrhnout vylepšení** - Vytvořte Feature Request
3. **Přispět kódem** - Fork → Změny → Pull Request
4. **Přidat album** - Navrhněte nové album do databáze
5. **Překlad** - Pomozte s překlady do dalších jazyků
### 🎯 Pravidla pro přispěvatele
- Dodržujte existující kódový styl
- Přidávejte testy pro nové funkce
- Aktualizujte dokumentaci
- Pište jasné commit zprávy
- Dělejte malé, zaměřené pull requesty
### 📦 Vývojové prostředí
```bash
# Klonování
git clone https://codeberg.org/Kankys/musicCalendar.git
cd musicCalendar
# Instalace závislostí (pro testování)
cd test
npm install
# Spuštění testů
npm test
```
---
## 📜 License
Projekt je licencován pod **MIT License** - podrobnosti viz [LICENSE](LICENSE) nebo [DOCUMENTATION.md](DOCUMENTATION.md#-license).
---
## 📞 Kontakt
### 👤 Autor
- **Jméno**: Lukáš Kaňka (Kankys)
- **Web**: [lukaskanka.cz](https://lukaskanka.cz)
- **Bluesky**: [@kankys.bsky.social](https://bsky.app/profile/kankys.bsky.social)
- **Codeberg**: [@Kankys](https://codeberg.org/Kankys)
- **Email**: [Kontaktní formulář](https://lukaskanka.cz/index/about/index.html)
### 🌐 Projekt
- **Live Demo**: [music.lukan.cz](https://music.lukan.cz)
- **Repozitář**: [codeberg.org/Kankys/musicCalendar](https://codeberg.org/Kankys/musicCalendar)
- **Dokumentace**: [DOCUMENTATION.md](DOCUMENTATION.md)
- **Issues**: [codeberg.org/Kankys/musicCalendar/issues](https://codeberg.org/Kankys/musicCalendar/issues)
---
## 🏆 Poděkování
- ✅ Všem kapelám, které inspirovaly tento projekt
- ✅ Uživatelům, kteří podporují nezávislé projekty
- ✅ [VPSfree.cz](https://vpsfree.cz) za bezplatné hostování
- ✅ [Codeberg](https://codeberg.org) za open-source platformu
---
> **"Hudba je jazyk duše. A grunge s nu-metalem jsou její nejupřímnější dialekty."** 🎸
*Poslední aktualizace: 5. srpna 2026*