Struktury Danych — Przegląd
Wprowadzenie
Ta sekcja zawiera struktury danych (JSON) dla wszystkich obiektów w Lumos Islands v2.
Struktury
| Struktura | Opis | Dokumentacja |
|---|---|---|
| Świat (World) | Kraj na globusie lub planeta w kosmosie | Światy |
| Lokacja (Location) | Miejsce na mapie świata z zadaniami | Lokacje |
| Zadanie (Task) | Jednostka treści edukacyjnych (quiz, video, audio, game, creative) | Zadania |
| Użytkownik (User) | Dziecko, rodzic, dorosły, szkoła | Użytkownicy |
Dodatkowe struktury w pliku Użytkownicy
| Struktura | Opis |
|---|---|
| Awatar (Avatar) | Personalizacja postaci — ubrania, kształt, kolory, akcesoria |
| Element personalizacji (Avatar Item) | Pojedynczy element do odblokowania |
| Odznaka (Badge) | Osiągnięcia z warunkami odblokowania |
| Poziom (Level) | Definicja poziomu z nagrodami |
| Todo | Zadania z todo listy (realne + in-game) |
| Statystyki (Stats) | Statystyki dziecka |
| Szkoła (School) | Szkoła / organizacja |
Użycie
Te struktury są używane przez:
- Flutter app — deserializacja z API, wyświetlanie danych
- Go web app (manager-content) — tworzenie i zarządzanie danymi
- Backend API — walidacja i przechowywanie
Relacje między strukturami
World (country/planet)
└── Location[]
└── Task[]
├── age_group → filtrowanie
└── requires_task_id → zależność
Child / Adult
├── avatar → personalizacja
├── badges[] → odznaki
├── completed_tasks[] → ukończone zadania
├── joined_planets[] → planety otwarte
├── assigned_planets[] → planety zamknięte
└── stats → statystyki
Parent
├── children_ids[] → powiązane dzieci
└── created_worlds[] → stworzone planety
School
├── student_ids[] → uczniowie
├── teacher_ids[] → nauczyciele
└── created_worlds[] → stworzone planety
Todo
├── child_id → dziecko
├── added_by → rodzic lub dziecko
└── linked_task_id? → zadanie in-game