gdzieposztuke.pl · Projekt własny · 2026
gdzieposztuke.pl — wydarzenia kulturalne na mapie
Serwis, który zbiera wernisaże, wystawy i koncerty ze stron galerii, muzeów i teatrów i pokazuje je na mapie, najbliższe pierwsze.
Odwiedź stronę
Wyniki
- Rodzajów wydarzeń — od wernisaży po warsztaty
- 8
- Program każdego źródła zbierany na nowo, bez ręcznej pracy
- co 6 h
01
Wyzwanie
Program galerii, muzeów, teatrów i filharmonii jest rozrzucony po dziesiątkach stron, każda z własnym kalendarzem.
Więcej
Kto chce sprawdzić, co dzieje się dziś kilka ulic dalej, musi przejść je po kolei. Serwis miał zebrać to w jednym miejscu, bez ręcznego przepisywania programów.
02
Rozwiązanie
Zbudowaliśmy agregator, który co kilka godzin czyta dane o wydarzeniach publikowane przez instytucje dla wyszukiwarek i kanały kalendarzy, rozpoznaje rodzaj wydarzenia, usuwa duplikaty i ustala adres na mapie.
Więcej
Odwiedzający wybiera, jak daleko chce pojechać i kiedy ma czas, a resztę widzi na liście i na mapie.
Kluczowe funkcje
- Zbieranie wydarzeń z danych schema.org (JSON-LD) i kanałów iCalendar
- Klasyfikacja w osiem rodzajów, deduplikacja między źródłami, geokodowanie
- Lista i mapa według odległości od użytkownika (Leaflet, OpenStreetMap)
- Strony miast i rodzajów pod wyszukiwarkę, generowane z danych
- Kalendarze do subskrypcji i newsletter „Weekend w mieście”
- Panel redakcji z kontami, zgłoszeniami od odwiedzających i historią zmian
Cała historia projektu
Punkt wyjścia
Informacja o wernisażu czy koncercie zwykle istnieje tylko na stronie miejsca, które go organizuje. Żeby zobaczyć, co dzieje się w okolicy, trzeba znać te miejsca i odwiedzić każde z osobna.
Większość instytucji publikuje jednak swój program w formie, którą czytają wyszukiwarki. Na tym oparliśmy cały serwis.
Co zrobiliśmy
Serwis od zera: API w NestJS z bazą PostgreSQL i frontend w Nuxt renderowany po stronie serwera. Źródła to strony z danymi schema.org Event albo kanały iCalendar. Co sześć godzin konektory zbierają z nich wydarzenia, klasyfikator przypisuje rodzaj, a geokoder ustala współrzędne miejsca. To samo wydarzenie z dwóch źródeł zapisuje się raz.
Lokalizacja odwiedzającego trafia do cookie, więc serwer od razu renderuje wydarzenia w pobliżu. Filtry siedzą w adresie, więc wynik można komuś wysłać. Każde miasto i każdy rodzaj wydarzenia ma własną stronę pod wyszukiwarkę, a każde wydarzenie dane strukturalne Event.
Kategorie mają swoje kolory w postaci szklanych kul renderowanych w WebGL. Jeden wspólny kontekst rysuje wszystkie, animują się tylko te widoczne, a przy prefers-reduced-motion i bez WebGL zostaje gradient CSS.
Redakcja pracuje w panelu: dodaje źródła z podglądem tego, co serwis z nich odczyta, poprawia wydarzenia (poprawki przetrwają kolejne zbieranie) i zatwierdza zgłoszenia od odwiedzających. Każda zmiana trafia do historii z wartościami przed i po.
Powiązane usługi
Masz pomysł? Porozmawiajmy.
Pierwsza rozmowa jest bezpłatna. Odpowiadamy w jeden dzień roboczy.