Skip to content

nxstr/nss-sem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Webchat aplikace

Semestrální projekt z předmětu NSS

Požadavky

  • vyber vhodne technologie:
    • Java Spring Boot a React
  • vyuziti spolecne DB:
    • PostgreSQL
  • vyuziti cache:
    • Hazelcast
  • vyuziti messaging principu:
    • Kafka
  • zabezpeceni pomoci bud basic authorization nebo pomoci OAuth2:
    • Spring Security
  • vyuziti Inteceptors:
    • trida LoggingInterceptor - slouzi k logovani authorizace
  • vyuziti jedne z technologie (SOAP, REST, graphQL, Java RMI, Corba, XML-RPC):
    • REST a WebSocket
  • nasazeni na produkcni server:
  • vyber vhodne architektury:
    • Event Base
  • inicializacni postup:
  • vyuziti elasticsearch:
    • není
  • pouziti alespon 5 design patternu:
    • Observer, Chain of responsibility, Builder, Template Method, Visitor
  • use cases:
    • Zaregistrovat se/Přihlásit se
    • Napsat otázku/odpověď <- extend u otázky: Zvolit kategorii otázky
    • Změnit osobní údaje
    • Otevřít/uzavřít chat
    • Vytvořit/editovat/smazat účet zaměstnance
    • Vytvořit/editovat účet hráče
    • Vytvořit/editovat/smazat kategorie
    • Vytvořit/editovat/smazat role
    • Přidat/odstranit kategorie v chatu

Program start

  1. Spusťte Docker, který slouží pro použití Kafky. Ve složce /chatgc/kafka_conf spusťte příkaz:
docker compose -f docker-compose.yml up
  1. Poté ve složce /chatgc spusťte Spring aplikaci příkazem (vyžaduje JDK 16+):
mvn spring-boot:run
  1. React aplikace se nachází ve složce /chat-ui a spouští se příkazem:
npm start

Nastavení přístupu

Aplikace má dva typy uživatelů - Employee a Player. Employee s role 'admin' má přístup ke všemu. Pro první inicializaci systému nejsou žádná data předem definována. Pokud v systému není zaregistrován žádný admin, může se zaregistrovat na adrese http://localhost:8080/api/register/emp, kde musí uvést jako body requestu následující informace: username, email a password. Tato adresa není dostupná z frontend části aplikace.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published