Úvodní stránka
🧩 Přehled projektu
Projekt byl vypracován v rámci zadání s důrazem na kvalitu implementace, bezpečnost a rozšiřitelnost řešení. Odevzdání proběhlo po uplynutí celé dostupné lhůty záměrně, aby byl prostor na iterace, refaktoring a ověření funkčnosti.
Při vývoji jsem využíval moderní nástroje včetně AI asistence (ChatGPT) jako podpory při hledání řešení a studiu neznámých konceptů. Klíčová rozhodnutí, architektura a finální implementace však vychází z vlastního pochopení problému a postupného ověřování v praxi.
✅ Implementované funkce (dle zadání)
- Registrace uživatele (jméno, příjmení, e-mail, heslo)
- Automatické přiřazení role superadmin prvnímu registrovanému uživateli
- Přihlášení a odhlášení uživatele
- Dvoufaktorová autentizace (TOTP)
- Vícestránkové menu dostupné všem uživatelům
-
Administrace uživatelů:
- přehled registrovaných uživatelů
- editace základních údajů a rolí
- odebrání administrátorských oprávnění
- volitelné odstranění uživatele
🚀 Funkce nad rámec zadání
- Ošetření vstupů proti XSS s důrazem na čitelnost a udržitelnost kódu
- Logovací systém dostupný pro roli superadmin
- Dynamické načítání produktů v e-shopu pomocí JavaScriptu
- Implementace košíku objednávek ukládaného do cookies včetně ochrany proti manipulaci s cenami
- Dynamické generování testovacích objednávek pro administrátorské role
-
Administrace produktů (včetně cen) dostupná pouze
superadminovi
- formuláře se načítají dynamicky (modal dialog)
Dynamické části aplikace byly zvoleny záměrně jako příležitost osvojit si práci s klientskou logikou a tokem dat mezi frontendem a backendem.
🧠 Architektonická a produktová rozhodnutí
Některé původní nápady byly v průběhu vývoje vědomě opuštěny nebo odloženy, zejména pokud by výrazně navyšovaly komplexitu, neodpovídaly rozsahu zadání nebo by vedly k technicky zavádějícímu řešení.
Koncept interní „sociální sítě“ s údajně „vlastním obsahem“ uživatelů byl opuštěn, jelikož by bez pokročilejší personalizace šlo pouze o obecný feed bez skutečné individualizace. Alternativní řešení (např. personalizované RSS odběry) bylo identifikováno jako možný směr dalšího rozvoje, nikoli jako součást aktuální implementace.
🔧 Funkce plánované do budoucna
- Stav objednávky
- Filtrování produktů
- Rozšíření práce s obsahem na základě uživatelských preferencí