Skip to content

piotrkrzyminski/communicator

Repository files navigation

Komunikator internetowy

Jest to prosta aplikacja internetowa zbudowana w oparciu o technologie Spring 5 oraz Angular 7 i jednocześnie projekt zaliczeniowy na przedmiot Programowanie aplikacji internetowych

Elementy aplikacji

  • Integracja z bazą danych H2 - serwer komunikuje się z bazą danych w celu zapisywania i odczytywania danych dotyczących użytkowników, grup i wiadomości. Cała komunikacja oparta jest na Spring JPA i Spring Data.
  • Rejestracja nowych użytkowników - Aby móc korzystać z aplikacji, konieczne jest posiadanie konta. Specjalny formularz pozwala na podanie danych takich jak nazwa użytkownika, hasło. Dane te są poddawane sprawdzeniu i zapisywane do bazy danych aplikacji.
  • Autoryzacja użytkownika poprzez JSON Web Token - Każdy użytkownik logujący się do systemu otrzymuje od serwera wygenerowany token, będący jednoznacznym identyfikatorem użytkownika. Token taki jest zapisywany w pamięci przeglądarki i dodawany poprzez interceptor do każdego zapytania do serwera. Serwer z kolei, sprawdza istnienie tego tokenu w nagłówku http, sprawdza jego poprawność,a także czy okres jego ważności nie minął. Na podstawie tego serwer udostępnia zasoby, bądź odsyła użytkownika do strony logowania w celu potwierdzenia tożsamości.
  • REST services - Warstwa frontowa komunikuje się z serwerem za pomocą kilku dostępnych metod.
  • Single Page Application - Dzięki wykorzystaniu routingu warstwa frontowa to jedna strona internetowa w sposób dynamiczny reagująca na zmianę danych
  • Responsywność - Wygląd aplikacji powstał w oparciu o framework Bootstrap i jest w pełni responsywny

Aplikacja pozwala na prowadzenie konwersacji pomiędzy zalogowanymi użytkownikami poprzez grupy. Użytkownik może zasubskrybować dowolną grupę, jak również ją opuścić

Widok ekranu rejestracji

Widok strony głównej

Widok dodawania grup

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published