zkt25/sk1
2025-04-22 13:25:53 +00:00
..
backend Nahrát soubory do „sk1/backend“ 2025-04-22 13:10:55 +00:00
frontend Nahrát soubory do „sk1/frontend/public“ 2025-04-22 13:15:40 +00:00
docker-compose.yaml Nahrát soubory do „sk1“ 2025-04-22 13:16:17 +00:00
package-lock.json Nahrát soubory do „sk1“ 2025-04-22 13:16:17 +00:00
package.json Nahrát soubory do „sk1“ 2025-04-22 13:16:17 +00:00
prepare-app.sh Nahrát soubory do „sk1“ 2025-04-22 13:16:17 +00:00
prepare-app.sh.save Nahrát soubory do „sk1“ 2025-04-22 13:16:17 +00:00
README.md Aktualizovat sk1/README.md 2025-04-22 13:25:53 +00:00
remove-app.sh Nahrát soubory do „sk1“ 2025-04-22 13:16:17 +00:00
start-app.sh Nahrát soubory do „sk1“ 2025-04-22 13:16:17 +00:00
stop-app.sh Nahrát soubory do „sk1“ 2025-04-22 13:16:17 +00:00
upload_model.py Nahrát soubory do „sk1“ 2025-04-22 13:16:17 +00:00

🧠 Detekcia nenávistnej reči

Webová aplikácia na klasifikáciu textov a detekciu nenávistnej alebo toxickej reči. Projekt bol vytvorený ako súčasť zadania na skúšku a spĺňa všetky požiadavky vrátane cloud nasadenia, API rozhrania a perzistentného ukladania výsledkov.


Čo aplikácia robí

  • Umožňuje používateľovi zadať text cez frontend (React)
  • Text sa odosiela na backend (Flask API), kde je analyzovaný pomocou ML modelu
  • Výsledok predikcie („Pravdepodobne toxický“ alebo „Neutrálny text“) sa zobrazí používateľovi
  • Každá požiadavka sa uloží do history.json spolu s časovou pečiatkou
  • Endpoint /api/history vracia históriu predikcií vo formáte JSON

Použité technológie

Cloud infraštruktúra Railway

  • Automatizované nasadenie z GitHub
  • Predkonfigurovaný HTTPS a verejná doména
  • Automatická správa buildov, reštartov a logovania

Docker

  • Backend kontajnerizovaný vlastným Dockerfile (Flask + model)
  • Frontend ako samostatná React služba (build cez Nixpacks alebo Docker)
  • Podpora manuálneho spustenia cez Docker Compose

Perzistencia

  • history.json: lokálna databáza vo forme JSON
  • Uchováva: vstupný text, predikciu a čas
  • Endpoint: GET /api/history

Štruktúra projektu

.
├── backend/
│   ├── app.py              # Flask API endpointy
│   ├── Dockerfile          # Konfigurácia kontajnera pre backend
│   └── history.json        # Perzistencia predikcií
├── frontend/
│   └── vite.config.js      # Railway doménová konfigurácia
├── docker-compose.yaml     # Definuje služby pre frontend a backend
├── prepare-app.sh          # Spustenie Docker kontajnerov
├── remove-app.sh           # Zastavenie a odstránenie kontajnerov
└── README.md               # Dokumentácia projektu