GameVibes to nowoczesna aplikacja mobilna stworzona w Flutter, będąca kompleksową platformą społecznościową dla entuzjastów gier wideo. Projekt został zrealizowany jako główny projekt inżynierski na kierunku informatyka przez zespół trzech osób.
GameVibes to aplikacja łącząca w sobie funkcjonalności platformy społecznościowej z dedykowanymi narzędziami dla graczy. Umożliwia użytkownikom odkrywanie nowych gier, pisanie recenzji, uczestniczenie w dyskusjach na forum oraz budowanie społeczności wokół wspólnych zainteresowań gamingowych.
Projekt powstał w ramach pracy inżynierskiej na studiach informatycznych. Głównym celem było stworzenie kompleksowej aplikacji mobilnej, która:
- Integruje różne aspekty społeczności gamingowej w jednym miejscu
- Zapewnia intuicyjny interfejs użytkownika zgodny z Material Design 3
- Demonstruje zaawansowane techniki programowania mobilnego w Flutter
- Implementuje nowoczesne wzorce architektoniczne (MVVM z Riverpod)
- Pokazuje umiejętności pracy zespołowej w projekcie informatycznym
- Przeglądanie gier: Odkrywaj najnowsze i nadchodzące tytuły
- Szczegółowe informacje: Kompletne dane o grach, screenshoty, opisy
- System obserwowania: Śledź ulubione gry i otrzymuj powiadomienia
- Zaawansowane wyszukiwanie: Filtruj gry według różnych kryteriów
- Tworzenie recenzji: Szczegółowe oceny z podziałem na aspekty (gameplay, grafika, dźwięk)
- Automatyczne obliczanie: Inteligentny system obliczania oceny ogólnej
- Edycja recenzji: Możliwość modyfikacji własnych opinii
- System raportowania: Zgłaszanie niewłaściwych treści
- Sekcje tematyczne: Zorganizowane dyskusje według kategorii
- Tworzenie wątków: Rozpoczynaj nowe dyskusje
- System postów: Odpowiadaj i komentuj w wątkach
- Like/Dislike: Oceniaj posty innych użytkowników
- System moderacji: Raportowanie i zarządzanie treścią
- Profile użytkowników: Personalizowane profile z awatarami i opisami
- System znajomych: Dodawaj znajomych i śledź ich aktywność
- Rangi forum: Progresja użytkowników na podstawie aktywności
- Historia aktywności: Śledzenie postów, recenzji i wątków
- Wyszukiwanie globalne: Znajdź gry, użytkowników, posty i recenzje
- Filtry: Precyzyjne filtrowanie wyników
- Historia wyszukiwań: Zapamiętywanie poprzednich zapytań
- Tryb ciemny/jasny: Automatyczne przełączanie motywów
- Material Design 3: Nowoczesny i spójny interfejs
- Responsywny design: Optymalizacja dla różnych rozmiarów ekranów
- Flutter SDK ^3.5.3 - Framework do tworzenia aplikacji multiplatformowych
- Dart - Język programowania
- Riverpod ^2.6.1 - Reaktywny state management
- Riverpod Annotations - Code generation dla Riverpod
- Flutter Riverpod - Widget-aware state management
- Material Design 3 - Nowoczesny system projektowania Google
- Cupertino Icons ^1.0.8 - Ikony w stylu iOS
- Auto Size Text ^3.0.0 - Automatyczne skalowanie tekstu
- Carousel Slider ^5.0.0 - Komponenty karuzel
- Glass Kit ^4.0.1 - Efekty szklane w UI
- HTTP ^1.2.2 - Komunikacja z API
- HTTP Parser ^4.0.2 - Parsowanie odpowiedzi HTTP
- Image Picker ^1.1.2 - Wybieranie zdjęć z galerii/aparatu
- Shared Preferences ^2.3.2 - Lokalne przechowywanie danych
- App Links ^6.3.2 - Deep linking
- Flutter Widget from HTML ^0.15.1 - Renderowanie HTML w Flutter
- Flutter Slidable ^3.1.1 - Akcje przesuwane (swipe actions)
- Flutter Test - Unit testing
- Integration Test - Testy integracyjne
- Mockito ^5.4.4 - Mockowanie w testach
- Riverpod Test ^0.1.6 - Testy dla Riverpod
- Build Runner - Code generation
- Riverpod Generator - Generowanie kodu Riverpod
- Flutter Lints ^5.0.0 - Analiza kodu
🖼️ Zobacz interfejs aplikacji
- Model: Klasy danych (Account, GameReview, ForumPost, etc.)
- View: Widżety Flutter (Screens, Widgets)
- ViewModel: Providerzy Riverpod zarządzający stanem
lib/
├── models/ # Modele danych
├── providers/ # Riverpod providers (state management)
├── screens/ # Ekrany aplikacji
├── widgets/ # Komponenty UI wielokrotnego użytku
└── main.dart # Punkt wejścia aplikacji
- Account Provider: Zarządzanie stanem użytkownika
- Game Reviews Provider: Obsługa recenzji gier
- Forum Providers: Zarządzanie postami i wątkami forum
- Search Provider: Funkcjonalność wyszukiwania
- Theme Provider: Zarządzanie motywami aplikacji
- Flutter SDK ^3.5.3
- Dart SDK
- Android Studio / VS Code
- Urządzenie Android/iOS lub emulator
-
Sklonuj repozytorium
git clone https://github.com/Adamad7/FrontendGameVibes.git cd FrontendGameVibes/frontend_game_vibes -
Zainstaluj zależności
flutter pub get
-
Wygeneruj kod
flutter packages pub run build_runner build
-
Skonfiguruj środowisko
- Zaktualizuj
config.jsonz adresem API serwera
- Zaktualizuj
-
Uruchom aplikację
flutter run
- Rejestracja i logowanie użytkowników
- Edycja profilu (zdjęcie, nazwa, opis)
- Zmiana hasła
- System ról i uprawnień
- System znajomych z zaproszeniami
- Rangi forum na podstawie aktywności
- Punkty doświadczenia za aktywność
- Historia aktywności użytkownika
- System raportowania treści
- Zarządzanie zgłoszeniami
- Edycja i usuwanie własnych treści
- Administratorskie funkcje moderacji
Projekt zawiera kompleksowy zestaw testów:
- Unit testy: Testowanie logiki biznesowej
- Widget testy: Testowanie komponentów UI
- Integration testy: Testowanie przepływów użytkownika
- Provider testy: Testowanie zarządzania stanem
# Uruchom wszystkie testy
flutter test
# Uruchom testy integracyjne
flutter test integration_test/Projekt został zrealizowany przez zespół trzech studentów informatyki Politechniki Lubelskiej jako główny projekt inżynierski:
- Adam Mazur - @Adamad7
- Michał Mazur - @ultron682
- Dawid Nowak - @Xoxonin
Aplikacja demonstruje umiejętności:
- Programowania mobilnego w Flutter/Dart
- Projektowania interfejsów użytkownika
- Implementacji zaawansowanych wzorców architektonicznych
- Zarządzania stanem aplikacji
- Integracji z API
- Pracy zespołowej w projektach IT
Ten projekt jest dostępny na licencji GNU General Public License v3.0.
GPL v3 zapewnia, że:
- Kod można swobodnie używać, modyfikować i dystrybuować
- Wszystkie pochodne prace muszą być również open source
- Zapobiega tworzeniu zamkniętych wersji komercyjnych
- Zachowuje prawa autorów
Pełna treść licencji: GNU GPL v3.0
Praca inżynierska - Politechnika Lubelska, Wydział Informatyki, 2025
Projekt powstał w ramach pracy inżynierskiej i służy jako demonstracja umiejętności technicznych zespołu deweloperskiego.
GameVibes - Łączymy graczy, tworzymy społeczność! 🎮✨


















