Projekt własny Mapa + baza danych Bez kont Supabase Statyczny hosting Warszawa

Szachowa Warszawa,
mapa miejsc do gry w szachy

Drugi projekt własny obok Szachmatów: szachowawa.pl, darmowa mapa, na której sprawdzisz, gdzie zagrać w szachy w Warszawie. Plenerowe stoły i szachownice, kawiarnie i bary z szachami oraz pinezki „szukam gry teraz", które znikają same po kilku godzinach. Bez konta, bez logowania, bez zbierania danych.

Opisuję ten projekt w realizacjach z tego samego powodu co Szachmaty: pokazuje na żywym organizmie, jak buduję systemy z bazą danych, moderacją i treścią pod wyszukiwarkę, zanim ktokolwiek zapłaci mi za podobne wdrożenie w firmie.

Typ projektu

Mapa z bazą zgłoszeń

Rola

Pomysł, dane, kod, moderacja

Start

Sierpień 2026

Frontend

Next.js (eksport statyczny)

Backend

Supabase (RLS, RPC, Realtime)

Hosting

Zwykły FTP, bez Node.js

Antyspam

Cloudflare Turnstile + limity w bazie

Model

Darmowa, bez reklam i kont

Adres

szachowawa.pl ↗

Podgląd

Tak wygląda szachowawa.pl

Mapa z trzema rodzajami pinezek (plener, lokal, „szukam gry teraz"), a pod nią pełny spis miejsc według dzielnic. Każde miejsce ma własną podstronę z opisem i nawigacją. Przewiń stronę w ramie albo przełącz na widok telefonu.

Podgląd strony szachowawa.pl na komputerze i telefonie, z możliwością przewinięcia całej strony

Złap i przewiń, albo przełącz urządzenie
Na żywo · szachowawa.pl Otwórz na żywo
Strona główna szachowawa.pl na komputerze: mapa Warszawy z pinezkami miejsc szachowych i spis stołów według dzielnic
Szachowa Warszawa na telefonie, mapa i pełna lista miejsc
góra strony
Next.jsSupabaseLeafletOpenStreetMap
58+ miejsc na starcie 18 dzielnic pinezki live do 5 h bez kont

Skąd pomysł

Stołów jest mnóstwo, tylko nikt nie wie gdzie

Warszawa ma dziesiątki plenerowych stołów szachowych i wielkoformatowych szachownic: w parkach, na skwerach, między blokami. Problem w tym, że ta wiedza była rozsypana po forach, grupach i pamięci lokalnych graczy. Chciałem jedno miejsce, które odpowiada na dwa pytania: gdzie stoi najbliższy stół i czy ktoś chce teraz zagrać.

Pierwsza część to katalog: stałe miejsca z opisem, dzielnicą i przyciskiem „Prowadź tutaj". Druga część jest żywa: każdy może bez zakładania konta wystawić na mapie tymczasowy stolik „szukam gry teraz", a inni gracze widzą go od razu i po prostu przychodzą. Pinezka znika sama najpóźniej po pięciu godzinach.

Do tego dwie rzeczy, które gracze i tak by otwierali w osobnych kartach: zegar szachowy online na telefon, gdy przy stole nie ma fizycznego zegara, oraz grupa Szachowa Warszawa na Facebooku do umawiania partii z wyprzedzeniem.

● Zasada projektu

Zero kont, zero logowania, zero zbierania danych

Autor pinezki dostaje losowy token usuwania zapisany wyłącznie w jego przeglądarce. Baza nie wie, kim jest, i nie musi wiedzieć.

Dane

Skąd się wzięło 58 miejsc na start

Nie zgadywałem i nie spisywałem z pamięci. Punkt wyjścia to OpenStreetMap: zapytanie Overpass o obiekty sport=chess w granicach Warszawy zwróciło 129 stołów i szachownic. Skleiłem je w klastry (próg 80 metrów, bo cztery stoły przy jednej fontannie to jedno miejsce, nie cztery), odrzuciłem tereny ogrodzonych szkół i wyszło kilkadziesiąt realnych lokalizacji plenerowych.

Każdy punkt przeszedł weryfikację współrzędnych, bo błędna pinezka psuje zaufanie mocniej niż brak pinezki. Kawiarnie, bary i klubokawiarnie z szachami dodałem osobno, z rozróżnieniem rodzaju lokalu na mapie. Na starcie w sierpniu 2026 mapa miała 58 miejsc w 18 dzielnicach i rośnie z tygodnia na tydzień, bo działa przycisk „Zgłoś miejsce": mieszkańcy i właściciele lokali podsyłają punkty, ja je sprawdzam i dopiero wtedy publikuję.

Każde miejsce ma własną podstronę z opisem i nawigacją, więc mapa jest też katalogiem, który wyszukiwarka rozumie strona po stronie, a nie jedną aplikacją-czarną skrzynką.

Technologia

Żywa mapa na hostingu za grosze

Najciekawsza decyzja techniczna: frontend to statyczny eksport Next.js, który leży na zwykłym hostingu współdzielonym, takim samym jak przy prostej stronie firmowej. Serwer nie uruchamia żadnego kodu. Cała żywa część (pinezki, zgłoszenia, wiadomości) idzie bezpośrednio z przeglądarki do Supabase.

Bezpieczeństwo nie polega na zaufaniu do frontendu. Publiczna rola bazy nie ma prawa bezpośredniego zapisu ani usuwania: wszystko przechodzi przez walidowane funkcje PostgreSQL, które m.in. odrzucają współrzędne spoza Warszawy. Token usuwania pinezki jest niewidoczny dla publicznego API, pinezki wygasają na poziomie polityk bazy, a przed spamem chronią Cloudflare Turnstile i limity zapisów w samej bazie. Do tego panel moderacji i skrzynka zgłoszeń, żeby prowadzenie mapy nie wymagało grzebania w bazie.

Efekt: projekt, który wygląda jak aplikacja z backendem za kilkaset złotych miesięcznie, a utrzymuje się za cenę domeny i zwykłego hostingu.

Projekt w liczbach

Stan na start, sierpień 2026

58+

miejsc na mapie, lista rośnie ze zgłoszeń

18

dzielnic Warszawy z co najmniej jednym miejscem

129

obiektów sport=chess z OpenStreetMap jako punkt wyjścia

3

rodzaje pinezek: plener, lokal, „szukam gry teraz"

5 h

maksymalne życie pinezki live, potem znika sama

0

kont użytkowników i formularzy logowania

Zrealizowane elementy

Mapa Leaflet z trzema rodzajami pinezek Osobna podstrona każdego miejsca Pinezki „szukam gry teraz" bez konta Token usuwania tylko w przeglądarce autora Zgłaszanie nowych miejsc z moderacją Panel administracyjny i skrzynka wiadomości Supabase: RLS, funkcje RPC, Realtime 3 funkcje Edge Cloudflare Turnstile Limity antyspamowe w bazie Seed z OpenStreetMap (Overpass) Weryfikacja współrzędnych każdego punktu Zegar szachowy online Mapa strony i dane strukturalne Statyczny eksport na zwykły hosting

Po co to tutaj

Co z tego ma firma, która zamawia u mnie system

Zamień „stoły szachowe" na oddziały, punkty odbioru, plac zabaw z ofertą weekendową albo listę obiektów pod wynajem, a masz dokładnie ten sam mechanizm: mapa z katalogiem, osobna podstrona każdego punktu, formularz zgłoszeń z moderacją i dane, które należą do Ciebie, nie do platformy z abonamentem.

Ten projekt pokazuje też mój sposób pracy z danymi: zamiast ręcznego wpisywania punktów, seed z otwartych źródeł i weryfikacja każdej pozycji przed publikacją. Oraz podejście do kosztów: żywa aplikacja z bazą, moderacją i ochroną antyspamową, która nie wymaga serwera aplikacji ani miesięcznego SaaS.

Jeśli Twoja firma potrzebuje mapy punktów, katalogu z podstronami pod wyszukiwarkę albo własnego systemu ze zgłoszeniami, to jest działający dowód, nie obietnica. Więcej o tym, jak takie podstrony pracują na widoczność lokalną: widoczność lokalna.

IB

Potrzebujesz mapy punktów albo systemu zgłoszeń dla firmy?

Zostaw numer, oddzwonię i porozmawiamy, co da się zbudować bez abonamentów.

Wypełnij krótki formularz, skontaktujemy się do 24 h:

Dodaj firmę, miasto, email (opcjonalnie)
Preferowana pora kontaktu (opcjonalnie)

Gwarancja poufności danych. Polityka prywatności