Strefa klienta Elite-Fighters

System Elite-Fighters, umożliwia użytkownikom zapisywanie się na treningi grupowe i indywidualne. Treningi, wcześniej dodawane przez administratora (trenera), są zarządzane w bazie danych MongoDB. Trener określa dostępność do treningów indywidualnych, a ich potwierdzenie wymaga akceptacji ze strony trenera. Trener ma pełny przegląd oraz statystyki odbytych treningów, może również monitorować obecność zawodników podczas treningu.

Technologie

  1. Node.js
    • Framework Express.js do tworzenia aplikacji webowych po stronie serwera.
    • Działa asynchronicznie, obsługując operacje wejścia/wyjścia w czasie rzeczywistym.
  2. MongoDB
    • Baza danych typu dokumentowego.
    • Służy do przechowywania informacji o treningach, użytkownikach i potwierdzeniach.
  3. Frontend – HTML, CSS, JavaScript, Bootstrap, Handlebars
    • Umożliwiają tworzenie responsywnych i atrakcyjnych wizualnie interfejsów.
    • Handlebars jako silnik szablonów ułatwia generowanie dynamicznych stron.
  4. AWS EC2
    • Całość hostowana na platformie AWS EC2, zapewniającej skalowalność i niezawodność.

Funkcjonalności

Rejestracja i Logowanie

  • Rejestracja użytkowników
    • Użytkownicy mogą zarejestrować się, dostarczając niezbędne informacje.
  • Logowanie do systemu
    • Zabezpiecza dostęp do strefy klienta.
    • zapisy na treningi możliwe są tylko dla zalogowanych użytkowników, którzy potwierdzili adres email
  • Resetowanie hasła
    • W razie zgubienia hasła, można podać swój e-mail na który wysyłany jest specjalny link umożliwiający zmianę hasła. Link ważny jest przez określoną ilość czasu

Przegląd Treningów

  • Lista dostępnych treningów grupowych i indywidualnych
    • Użytkownicy mogą przeglądać dostępne treningi w systemie.
  • Szczegóły treningów
    • Informacje o czasie, miejscu, trenerze oraz dostępności miejsc.

Zapisy na Treningi

  • Zapisy na trening grupowy
    • Umożliwia użytkownikom zapisanie się na wybrany trening grupowy.
    • W razie przekroczenia dostępnych miejsc użytkownik jest wpisywany na listę rezerwowych. Powiadamiany jest o tym stosownym komunikatem, a w przypadku wypadnięcia z listy rezerwowych użytkownik dostaję e-mail z informacją.
  • Zapisy na trening indywidualny
    • Użytkownicy wybierają typ treningu oraz godzinę, która jest dostępna.

Zarządzanie Treningami przez Administratora

  • Dodawanie treningów do bazy danych
    • Administrator (trener) dodaje treningi, określając ich parametry.
  • Określanie dostępności do treningów indywidualnych
    • Trener określa, kiedy jest dostępny do treningów indywidualnych.
  • Potwierdzanie treningów indywidualnych
    • Administrator potwierdza treningi indywidualne, wysyłając stosowne powiadomienie e-mailowe.

Powiadomienia i Komunikaty E-mail

  • Powiadomienia o potwierdzonych treningach indywidualnych
    • Zawodnicy otrzymują powiadomienia e-mailowe po potwierdzeniu treningu indywidualnego.
  • Komunikaty o odwołaniu treningu.
    • Użytkownicy otrzymują powiadomienia o odwołanych treningach.

Interfejs Użytkownika

  • Responsywny interfejs użytkownika
    • Dostosowany do różnych urządzeń, zapewniający komfortowe korzystanie.
  • Intuicyjny formularz zapisu na trening
    • Użytkownik łatwo i szybko może dokonać wyboru treningu i potwierdzić zapis.

Podsumowanie

Projekt Systemu Elite-Fighters: Strefa Klienta dostarcza kompleksowe narzędzie do zarządzania treningami w sposób elastyczny i łatwy w użyciu. Wykorzystanie technologii Node.js, MongoDB i frameworka Express.js zapewnia skalowalność i efektywność działania systemu.

Oprogramowanie jest gotowe do dalszego rozwijania, umożliwiając dostosowanie do specyficznych potrzeb klienta. Dodatkowo, interfejs użytkownika wsparty technologiami HTML, CSS, JavaScript, Bootstrap i Handlebars gwarantuje przyjazne i atrakcyjne doświadczenie dla użytkowników.

Ostateczna wersja systemu została przetestowana pod kątem wydajności i bezpieczeństwa, co pozwala stwierdzić, że spełnia ona założone cele i oczekiwania użytkowników. System jest w dalszym ciągu rozwijany.