Projekt semestralny – Game Tracker / Game Library Manager.
Backlog.gg/
├── .venv/ # virtual environment (nie commitowany)
├── backend/ # Django backend
└── frontend/ # React / Next.js frontend
- Python 3.10+
- Node.js 18+ (lub LTS)
- npm lub yarn
- Utwórz virtual environment (jeśli jeszcze nie istnieje):
cd Backlog.gg
python -m venv .venv- Aktywuj środowisko:
- Windows (PowerShell):
.\.venv\Scripts\activate- Linux / macOS:
source .venv/bin/activate- Zainstaluj zależności:
cd backend
pip install -r requirements.txt- Wykonaj migracje bazy danych:
python manage.py migrate- Załaduj dane do bazy z JSONa (OPCJONALNE; KOLEJNOŚĆ JEST WAŻNA)
python manage.py loaddata fixtures/users.json
python manage.py loaddata fixtures/games.json- Uruchom serwer deweloperski:
Projekt używa Daphne (ASGI) zamiast runserver – wymagane dla WebSocketów (status online użytkowników).
daphne -p 8000 config.asgi:application
python manage.py runservernadal działa, ale WebSockety nie będą działać – status online będzie nieaktywny.
Strona backendu dostępna jest pod: http://127.0.0.1:8000
Plik SQLite (
db.sqlite3) tworzony jest lokalnie i nie jest commitowany.
- Przejdź do folderu frontend:
cd frontend- Zainstaluj zależności:
npm install- Uruchom serwer deweloperski:
npm run devStrona frontendowa dostępna jest pod: http://localhost:3000
.venvoraz pliki środowiskowe.envnie są commitowane – każdy dev powinien utworzyć własne.- Wystarczy:
- Utworzyć
.venv - Zainstalować zależności
- Wykonać migracje Django
- Uruchomić backend (
daphne) i frontend
- Utworzyć
- Wszystkie zmiany w bazie danych powinny być wykonywane przez migracje Django (
makemigrations+migrate) – plikdb.sqlite3nie jest commitowany. - Backend używa Django Channels + Daphne (ASGI) dla obsługi WebSocketów. Channel layer działa in-memory (bez Redisa) – wystarczy na środowisko deweloperskie.