Skip to content

Pełny system uwierzytelniania JWT z backendem w Spring Boot i frontendem w Angular — logowanie i autoryzacja z użyciem nowoczesnych wersji obu frameworków.

Notifications You must be signed in to change notification settings

fenix544/JwtLoginSpring

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JwtLoginSpring

Projekt demonstracyjny implementujący pełny system uwierzytelniania JWT (JSON Web Token) z wykorzystaniem najnowszych (i przyszłych) wersji Spring Boot (Backend) oraz Angular (Frontend).

🛠 Technologie

Backend

  • Java 25 - Najnowsza wersja języka Java (Preview/Early Access).
  • Spring Boot 3.5.7 - Framework aplikacyjny.
  • Spring Security - Zaawansowane mechanizmy uwierzytelniania i autoryzacji.
  • Spring Data JPA - Warstwa dostępu do danych.
  • JJWT (0.13.0) - Biblioteka do obsługi tokenów JWT.
  • MySQL - Relacyjna baza danych.
  • Docker Compose - Orkiestracja kontenera bazy danych.

Frontend

  • Angular 21 - Framework frontendowy.
  • Tailwind CSS - Framework CSS typu utility-first.
  • RxJS - Programowanie reaktywne.
  • ngx-cookie-service - Obsługa ciasteczek po stronie klienta.

📋 Wymagania wstępne

Przed uruchomieniem upewnij się, że masz zainstalowane:

  • Java JDK 25
  • Node.js (wersja LTS lub nowsza)
  • Docker Desktop (do uruchomienia bazy danych)

🚀 Instalacja i Uruchomienie

1. Baza Danych

Projekt wykorzystuje Docker Compose do uruchomienia instancji MySQL. Uruchom bazę danych z głównego katalogu projektu:

docker compose up -d

Baza danych będzie dostępna na porcie 3307 (zmapowanym z wewnętrznego 3306). Dane dostępowe (zdefiniowane w compose.yml):

  • Database: database
  • User: user
  • Password: password
  • Root Password: root_password

2. Backend

Przejdź do katalogu backendu i uruchom aplikację:

cd backend
# Linux/macOS
./gradlew bootRun

# Windows
.\gradlew.bat bootRun

Serwer backendowy wystartuje na porcie 8080.

3. Frontend

Przejdź do katalogu frontendowego (fronted), zainstaluj zależności i uruchom serwer deweloperski:

cd fronted
npm install
npm start

Aplikacja frontendowa będzie dostępna pod adresem http://localhost:4200.

🌟 Funkcjonalności

  • Rejestracja i Logowanie: Pełny proces uwierzytelniania użytkownika.
  • JWT Auth: Bezpieczne przesyłanie tożsamości za pomocą tokenów.
  • Ochrona Zasobów: Przykłady endpointów dostępnych tylko dla zalogowanych użytkowników.
  • Nowoczesny Stack: Wykorzystanie najnowszych dostępnych wersji bibliotek (Java 25, Angular 21).

📂 Struktura Projektu

  • backend/ - Kod źródłowy aplikacji Spring Boot.
  • fronted/ - Kod źródłowy aplikacji Angular.
  • compose.yml - Konfiguracja Docker Compose dla bazy danych.

About

Pełny system uwierzytelniania JWT z backendem w Spring Boot i frontendem w Angular — logowanie i autoryzacja z użyciem nowoczesnych wersji obu frameworków.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published