Mechanizm przyznawania cyfrowych kart z dynamicznymi zasadami generowania
System nagród w Explomanii opiera się na wielu działaniach użytkownika, takich jak rejestracja, odwiedzanie Spotów, realizowanie Tras, zaproszenia oraz aktywność społeczności. Każde z tych zdarzeń wykorzystuje inne reguły, pule kart, ograniczenia rzadkości oraz zależności geograficzne. Dodatkowo obrazy kart są generowane dynamicznie na podstawie wielu pól, z obsługą wielu języków i różnych alfabetów.
Zbudowaliśmy backendowy mechanizm nagród, który oblicza zestawy kart na podstawie dokładnego kontekstu aktywności użytkownika. Ciężkie operacje, takie jak przyznawanie nagród, renderowanie obrazów kart oraz wysyłka powiadomień, są wykonywane asynchronicznie w tle przy użyciu Celery. System łączy logikę opartą na regułach, przetwarzanie asynchroniczne oraz dynamiczne generowanie obrazów, tworząc fundament warstwy grywalizacji w aplikacji.