](https://www.creative-tim.com/product/material-kit)[
](https://www.creative-tim.com/product/vue-material-kit)[
](https://www.creative-tim.com/product/material-kit-react)[
](https://www.creative-tim.com/product/material-kit-react-native)[
](https://demos.creative-tim.com/material-kit-figma/presentation.html)[
](https://themeisle.com/themes/hestia/?ref=creativetim)[
](https://github.com/creativetimofficial/material-kit/tree/photoshop)[
](https://github.com/creativetimofficial/material-kit/tree/sketch)
-
-
-
-
-
-| HTML | React | Vue |
-| --- | --- | --- |
-| [](https://www.creative-tim.com/product/material-kit) | [](https://www.creative-tim.com/product/material-kit-react) | [](https://www.creative-tim.com/product/vue-material-kit)
-
-| React Native | Figma | WordPress |
-| --- | --- | --- |
-| [](https://www.creative-tim.com/product/material-kit-react-native) | [](https://demos.creative-tim.com/material-kit-figma/presentation.html) | [](https://themeisle.com/themes/hestia/?ref=creativetim)
-
-## Demo
-
-| Home Screen | Profile Screen | Chat Screen | Product Screen |
-| --- | --- | --- | --- |
-| [](https://demos.creative-tim.com/material-kit-react-native/) | [](https://demos.creative-tim.com/material-kit-react-native/) | [](https://demos.creative-tim.com/material-kit-react-native/) | [](https://demos.creative-tim.com/material-kit-react-native/) |
-
-- [Start page](https://demos.creative-tim.com/material-kit-react-native)
-- [How to install our free demo](https://demos.creative-tim.com/material-kit-react-native/docs/#/install)
-
-[View more](https://demos.creative-tim.com/material-kit-react-native)
-
-## Quick start
-- Try it out on Expo (Simulator for iOS or even your physical device if you have an Android)
-- Buy from [Creative Tim](https://www.creative-tim.com/product/material-kit-pro-react-native)
-
-
-## Documentation
-The documentation for the Material Kit React Native is hosted at our [website](https://demos.creative-tim.com/material-kit-react-native/docs/).
-
-
-## File Structure
-Within the download you'll find the following directories and files:
+Bez osobnego backendu — frontend rozmawia z Supabase bezpośrednio (chronione przez RLS).
+Dane o boiskach uzupełniają skrypty Pythona uruchamiane ręcznie z GitHub Actions.
```
-material-kit-react-native/
-├── App.js
-├── README.md
-├── app.json
-├── assets
-├── babel.config.js
-├── components
-│ ├── Button.js
-│ ├── Drawer.js
-│ ├── Header.js
-│ ├── Icon.js
-│ ├── Product.js
-│ ├── Select.js
-│ ├── Switch.js
-│ ├── Tabs.js
-│ └── index.js
-├── constants
-│ ├── Images.js
-│ ├── Theme.js
-│ ├── index.js
-│ ├── products.js
-│ └── utils.js
-├── navigation
-│ ├── Menu.js
-│ └── Screens.js
-├── package-lock.json
-├── package.json
-├── screens
-│ ├── Components.js
-│ ├── Home.js
-│ ├── Onboarding.js
-│ ├── Pro.js
-│ ├── Profile.js
-│ └── Settings.js
-
+┌──────────────────┐ ┌──────────────────────┐
+│ Frontend │ REST │ Supabase │
+│ Next.js 14 │ ─────▶ │ PostgreSQL + Auth │
+│ (Vercel) │ │ (Google OAuth, RLS) │
+│ Leaflet + OSM │ └──────────▲───────────┘
+└──────────────────┘ │ service_role
+ │
+ ┌─────────────┴────────────┐
+ │ Scraper (GitHub Actions) │
+ │ OSM + Google Places + │
+ │ Claude (wzbogacanie) │
+ └───────────────────────────┘
```
+| Warstwa | Technologia |
+|---|---|
+| Frontend | Next.js 14 (App Router), TypeScript, Tailwind CSS |
+| Dane / Auth | Supabase (PostgreSQL, Google OAuth, Row Level Security) |
+| Mapa | Leaflet + OpenStreetMap (bez tokenu); Mapbox tylko do miniaturek |
+| Hosting | Vercel |
+| Dane boisk | Python (`scraper/`) + Google Places API + Claude, w GitHub Actions |
-## OS Support
-
-At present, we officially aim to support the last two versions of the following operating systems:
-
-[
](https://www.creative-tim.com/product/material-kit-pro-react-native)[
](https://www.creative-tim.com/product/material-kit-pro-react-native)
-
-
-
-## Resources
-- Demo: Porównanie warstwy wizualnej. Mapa zastąpiona placeholderem. Paleta robocza: zielony #15803d, limonka #84cc16, tekst #0f172a, tło #f8faf9.
+ +Boiska, mecze i gracze w Poznaniu i okolicach — w jednym miejscu.
+Kliknij boisko, żeby zobaczyć dostępność i aktywne gry.
+Mniej organizowania, więcej grania.
+Setki boisk w Poznaniu — filtruj po sporcie.
+Zero rejestracji dla zaproszonych. Widzisz kto idzie.
+Boiska, mecze i gracze w jednym miejscu. Zbierz skład bez przekopywania się przez grupy na Facebooku.
+Kliknij boisko, żeby zobaczyć dostępność i aktywne gry.
+Mniej organizowania, więcej grania.
+Setki boisk w Poznaniu — filtruj po sporcie.
+Zero rejestracji dla zaproszonych. Widzisz kto idzie.
+Brakuje wam dwóch do składu? Ktoś z okolicy dołączy.
+Musisz być zalogowany
+Zaloguj się, aby uzyskać dostęp do panelu.
+ + Wróć do mapy + +Brak dostępu
++ Ta strona jest dostępna tylko dla menedżera obiektu lub administratorów. +
+ + Wróć do obiektów + +Panel zarządzania obiektem
+Brak rezerwacji na ten dzień
+{booking.userName}
+ {/* Phone */} + {booking.phone && ( +{booking.phone}
+ )} + {/* Players count + sport */} ++ {booking.playersCount} os. + {booking.sport ? ` · ${booking.sport}` : ''} +
+Brak dostępu
++ Analityka jest dostępna tylko dla administratorów. +
+ Wróć na stronę główną ++ {loading ? 'Ładowanie…' : `Ostatnie 30 dni · ${rows.length} zdarzeń`} +
+Retencja (30 dni)
++ {stats.retentionPct}% + + {stats.returning} z {stats.totalUsers30} użytkowników wróciło w innym dniu + +
++ To kluczowy miernik — ilu graczy wraca po pierwszej wizycie. Tę liczbę chcemy ruszyć w górę. +
+Aktywność dzienna (14 dni)
+Ostatnie zdarzenia
+ {loading ? ( +Brak zdarzeń. Pojawią się gdy użytkownicy zaczną korzystać z aplikacji.
+ ) : ( +{value}
+ {sub &&{sub}
} +Brak dostępu
+Ta strona jest dostępna tylko dla administratorów.
+ + Wróć do mapy + ++ {venue.name} +
+
+
Brak dostępu
++ {counts.pending} do sprawdzenia · {counts.approved} zatwierdzone · {counts.hidden} ukryte +
+Wszystkie obiekty pominięte
+Wróć do pominiętych poniżej, żeby je przetworzyć.
+