Edytuj układ
Otwórz pełny edytor
Kompletny przegląd wszystkich modułów — od onboardingu, przez planowanie skrzynek, kalkulator upraw, aż po bazę wiedzy AI.
🚀 q-ogrod.pages.dev ↗Ewa wchodzi do aplikacji i opowiada o swoim ogrodzie. Q zapamiętuje wszystko i buduje spersonalizowany plan.
Kafelki do wyboru: 🏡 Przydomowy / 🌱 Działkowy / 🪴 Balkonowy / 🏗️ Szklarniowy. Multi-select — można mieć kilka typów jednocześnie.
Checkboxes: ✅ Skrzynki warzywne, ✅ Grządki, ✅ Szklarnia, ✅ Szpalet, ✅ Sad, ✅ Trawnik, ✅ Rośliny ozdobne, ✅ Drzewa owocowe, ✅ Krzewy owocowe. Wybór determinuje kolejne kroki.
Dodawanie każdej skrzynki: nazwa, szerokość i długość w cm, typ (raised bed / grządka). Upload zdjęcia skrzynki → zapisywane w Supabase Storage. Można dodać wiele skrzynek.
3 opcje: 🪴 Przez rozsadę (siew pod dachem → przesadzenie) / 🌱 Bezpośrednio do ziemi / 🔄 Oba sposoby. Wpływa na kalendarz zadań i powiadomienia.
7 kategorii roślin trwałych z checkboxami: byliny, drzewa owocowe, krzewy owocowe, hortensje/iglaki, trawy ozdobne, kwiaty cebulowe, inne ozdobne. Autocomplete z bazy Supabase. Pola: powierzchnia trawnika (m²) + checkbox "Mam robot koszący 🤖".
"Czy chcesz teraz zaplanować ogród warzywny?" — ✅ Tak → przejdź do kroku 7 → ⏭️ Nie, zrobię później → aplikacja otwiera się bezpośrednio na zakładce Plan z gotowym widgietem planowania.
Selektor upraw z emoji pogrupowany w 8 kategorii: Warzywa owocowe, Korzeniowe, Liściowe, Cebulowe, Strączkowe, Owoce jagodowe, Zioła, Szparagowe. Każda roślina = kafelek z emoji i nazwą. Zapisuje się w localStorage jako plan sezonu.
Interaktywna siatka każdej skrzynki. Każda komórka = 5×5cm. Drag & drop rzędów, zoom, AI planowanie, historia płodozmianu.
Otwórz pełny edytor
Dobierz optymalne warzywa
Każda skrzynka rozbita na komórki 5×5cm. Skrzynka 200×100cm = 800 komórek. Każda komórka może zawierać jedną roślinę z emoji.
Otwiera listę roślin A-Z. Wybierz → komórka wypełnia się emoji.
Złap i przesuń ≥8px → tryb drag. Zielone = źródło, żółte = cel.
Przycisk Powiększ — podwaja komórki, siatka scrollowalna.
Nagraj opis ogrodu → Gemini tłumaczy na układ komórek.
2+ komórek w tym samym wierszu siatki. Suwak przesuwa góra-dół. Edycja: roślina + odstęp.
1 komórka w wielu wierszach tej samej kolumny. Suwak przesuwa lewo-prawo.
Kliknij ✏️ → zmień roślinę + suwaki odstępu → live preview na siatce natychmiast.
Wszystkie zakresy 1–100cm, krok 1cm (marchewka co 2cm bez problemu!):
Lista CURRENT_PLANTS_LIST — 74 rośliny pogrupowane w 8 kategorii. Dropdown A-Z. Każda z emoji. Spójne we wszystkich komponentach.
Podaj wymiary, historię, porę roku — algorytm dobiera warzywa uwzględniając sąsiedztwo, płodozmian i dostępną przestrzeń.
Dobierz optymalne rośliny
floor(W/spacingRec) × floor(L/rowSpacing) = ile sztuk danego warzywa zmieści się
Jeśli poprzedni rok = psiankowate → wyklucz pomidor, paprykę, ziemniaka (3 lata przerwy)
150+ par sąsiedztwa — jeśli dwa warzywa to bad neighbors, wybierz tylko jedno
Fasola/groch wiążą azot → zawsze proponuj jako uzupełnienie
Po głównym zbiorze → sugestia co posadzić (szpinak po pomidorze, rzodkiewka po kapuście)
Każde z: rozstaw min/zal., rodzina botaniczna, sąsiedztwo, płodozmian, kalendarz siewów, przedplon i poplon.
Psiankowate, Kapustne, Baldaszkowate, Motylkowate, Liliowate, Dyniowate, Złożone, Komosowate, Trawy, Zioła.
Macierz COMPANION_MATRIX z funkcją getCompanionship(id1, id2) zwracającą 'good' | 'bad' | 'neutral'.
| Roślina | Dobre sąsiedztwo ✅ | Złe sąsiedztwo ❌ | Rozstaw |
|---|---|---|---|
| 🍅 Pomidor | Bazylia, Marchew, Cebula, Czosnek | Koper, Ziemniak, Fenkuł | 60cm / rzędy 70cm |
| 🥕 Marchew | Pomidor, Cebula, Sałata, Rozmaryn | Koper, Buraki | 5cm / rzędy 25cm |
| 🥒 Ogórek | Koper, Fasola, Sałata, Cebula | Ziemniak, Pomidor | 40cm / rzędy 60cm |
| 🧄 Czosnek | Pomidor, Marchew, Truskawka, Róże | Fasola, Groch, Kapusta | 10cm / rzędy 20cm |
| 🥬 Sałata | Marchew, Rzodkiewka, Truskawka | Seler | 25cm / rzędy 30cm |
3 pod-zakładki: Moje rośliny (live-sync), Dowiedz się więcej (AI cards z Gemini), Podcast. 248 rekordów w Supabase.
Agreguje ze wszystkich 6 źródeł danych jednocześnie. Zawsze aktualne — każda zmiana w onboardingu lub planerze pojawia się natychmiast.
Kliknij dowolne warzywo → Gemini generuje szczegółową kartę wiedzy. Cache w localStorage — po pierwszym ładowaniu błyskawicznie.
Lista odcinków podcastu ogrodniczego z playerem audio. Transkrypty weszłyby do bazy Supabase plant_knowledge.
Solanum lycopersicum · Psiankowate · Gemini 2.0 Flash
Z setup.functionalPlants (onboarding krok 2)
Z setup.greenhousePlants (jeśli ma szklarnię)
Z setup.perennials (onboarding krok 5)
Z q-ogrod-my-plants (EditPlantsModal)
Z q-ogrod-season-{rok} (onboarding krok 7)
Z beds grid — co jest narysowane w planerze
Zadania generowane dynamicznie na podstawie kalendarza siewów, roślin trwałych i historii ogrodu.
Kliknij zadanie → zielone ✓ → 2 sekundy → fade out. iPhone Reminders style.
Przesuń w lewo → pojawia się 🗑 → tap "Usuń?" → tap → usunięte trwale.
3 kroki: 📦 Skrzynki / 🌸 Rośliny / 🗓️ Plan. Żółty = do zrobienia, zielony = gotowe.
Temperatura, ikona, opis. Dane z wttr.in. Lokalizacja z ClimateContext.
Ewa (główna użytkowniczka) testuje aplikację na żywo i zgłasza konkretne potrzeby. To jest nasz kompas produktowy.
"Chcę aplikację która wie kiedy siać, mówi mi co do czego pasuje, i pokazuje mi to wizualnie w mojej konkretnej skrzynce — nie ogólnie, ale dokładnie jak to ma wyglądać."— Ewa Strzelczyk, ogrodniczka, mama Bruna i Tymka
Interaktywna siatka 5cm/komórka. Drag & drop rzędów. Zoom. Każde warzywo z emoji.
✅ LIVEZłap rząd i przesuń góra-dół lub lewo-prawo. Threshold 8px, działa myszą i palcem.
✅ LIVEPrzycisk "Powiększ" — 2× rozmiar komórek. Małe warzywa jak marchewka co 2cm widoczne.
✅ LIVE"Marchewka sieje się co 2cm" — wcześniej minimum było 5cm. Teraz od 1cm.
✅ LIVELista roślin zawsze aktualna ze wszystkich 6 źródeł. Zmiana w planerze = natychmiastowe odzwierciedlenie.
✅ LIVEModal "Edytuj moje rośliny" — 7 kategorii, dodaj Miskant, Dereń, cokolwiek. Z checkboxami.
✅ LIVETabela 150+ par. Kalkulator ostrzega jeśli dwa warzywa to złe sąsiedztwo.
✅ LIVEKalkulator wyklucza rodziny które były w zeszłym roku. Pokazuje sekwencję przedplon→plon→poplon.
✅ LIVENagraj opis co chcesz posadzić → Gemini tłumaczy na układ skrzynki. "Chcę pomidory z lewej, marchew po środku".
✅ LIVEKliknij warzywo → Gemini generuje: siew, rozsada, sadzenie, pielęgnacja, zbiory. Cache offline.
✅ LIVEBug zgłoszony przez Ewę podczas visual test. Legenda planera zakrywa część warzyw.
🔧 DO NAPRAWYPopup gdy dwa warzywa ze złym sąsiedztwem są blisko siebie w siatce. "Pomidor i koper — zły sąsiad!"
📋 PLANOWANEPrzycisk "Przywróć moje dane" — szybkie przywrócenie zapisanego zestawu danych do testowania.
📋 PLANOWANELista zakupów z Qook → automatyczne zamówienie na Frisco.pl. Ewa bardzo na to czeka.
🔜 KOLEJNY SPRINTZero backendu dla danych użytkownika — wszystko w localStorage. Supabase tylko dla bazy roślin. Gemini dla AI.
SPA bez routera. Stan w useState. Build w 800ms.
Utility-first. Mobile-first. max-width 480px. Font: Poppins.
Deploy w sekundy. Functions API. Bezpłatne, nieograniczona bandwidth.
248 rekordów plant_knowledge. Storage zdjęć. Tokeny Withings.
Karta wiedzy AI, planowanie głosowe, analiza układu skrzynki, lista zakupów.
Wszystkie dane użytkownika lokalnie. Prywatność by design. Offline-first.
Repo: damianstrzelczyk/q-ogrod. Private. CI/CD przez Cloudflare Pages.
qqqq — 4 litery Q. Klawiatura 4×3 z przyciskiem Q w roli specjalnej.
Trzy priorytety dla GardenOS — nowego agenta deweloperskiego Q Ogrodu.
Krytyczne dla UX:
Zwiększa wartość:
Duże różnicowanie: