HIGI

Mapa struktury portalu

Jak podstrony dev.higi.com.pl są ułożone dzisiaj, co się w tym układzie nie zgadza i jak proponuję to poukładać.

dokument do decyzji 9 sierpnia 2026 zero zmian w aplikacji

01Skąd to wiadomo

Trzy niezależne przeglądy, każdy inną metodą — żeby dało się je skonfrontować, a nie uwierzyć jednemu.

metodaco objęła
Czytanie kodu11 adresów aplikacji, 3 strony silnika ankiety, 70 punktów wejścia do serwera
Prawdziwa przeglądarka
logowanie i klikanie
17 adresów, 39 zrzutów ekranu — komputer (1440 px) i telefon (390 px)
Wytyczne UXreguły: kiedy podstrona, kiedy zakładka, kiedy okienko
62miejsca, w których może wylądować użytkownik — ekrany, zakładki, okienka
70punktów wejścia do serwera
8pozycji, ile najwyżej pokazuje menu
Czego to nie objęło: konta administratora. Uprawnienia admina ma dziś wyłącznie kilka prywatnych skrzynek prawdziwych osób — żadne konto testowe się nie kwalifikuje, a wejście na cudze prywatne konto wymaga osobnej zgody. Panele administracyjne opisane są więc z kodu, nie z ekranu.

02Mapa dzisiejsza

Tak wygląda portal teraz. Znaczniki po prawej pokazują, gdzie coś się nie zgadza.

dev.higi.com.pl
│
├── /                              niezalogowany → strona marketingowa
│                                  zalogowany   → sprawdzenie dostępu → ankieta
│                                  🚪 po wygaśnięciu dostępu: ekran „Aktywuj” bez wyjścia
│
├── /dev                           to samo, drugim wejściem
│
├── /legacy/          SILNIK       ankieta 13 pytań
├── /legacy/index.dev SILNIK DEV   ankieta 18 pytań + przełącznik „Moja / Globalna”
│   │
│   ├── zakładka: Ankieta
│   ├── zakładka: Plan  →  Wydruk  (kody QR + dane gabinetu)
│   ├── zakładka: Edytor bloków    👻 przycisk ukryty, ale dwa inne tam prowadzą,
│   │                                 a w środku „zostanie dodany w kolejnej iteracji”
│   ├── okienko ⚙ Ustawienia       ⚠ ILUZJA — patrz niżej
│   ├── okienko: Sekcje planu
│   └── okienko „szczegóły”        👻 nic go nie otwiera, a gdyby się otworzyło,
│                                     nie dałoby się go zamknąć
│
├── /edytor           EDYTOR       jedyny ekran z menu w całym portalu
│   │                              ⚠ uprawnienia wymagają uporządkowania
│   │                              🚪 brak wylogowania
│   ├── panel: Pytania i bloki
│   ├── panel: 🪪 Wizytówka        ← dane firmy na wydruk (zapis na serwer)
│   ├── panel: Linki i kody QR
│   ├── panel: Wersje
│   └── panel: Fabryczna treść
│
├── /menu             MAKIETA      🎭 przełącznik ról, otwarta dla każdego
│
├── /gabinet          ZESPÓŁ       🚪 bez menu
│                                  ⚠ dla konta bez gabinetu: jedno zdanie i koniec
│
├── /zaloz-gabinet                 🚪 bez menu
├── /akceptuj-zaproszenie          bez linku z maila odbija na /
│
├── /admin            UŻYTKOWNICY  🚪 bez menu · zakładki po angielsku
├── /admin/gabinety   MIESIĄCE     🚪 bez menu
├── /admin/maile      TREŚĆ MAILI  🚪 bez menu
├── /legacy/mapa/     MAPA BLOKÓW  🚪 bez menu
├── /partnerzy        LANDING      🚪 bez menu
│
├── /preview/moje-konto/           🎭 makieta — ⚠ pokazuje jako „przykład”
│                                     prawdziwe dane osobowe, a jest w żywym menu
├── /preview/zespol/               🎭 makieta gabinetu
├── /preview/ankieta-editor/       🎭 makieta edytora
│
└── 👻 GOTOWE, LEŻY W SZUFLADZIE, NIEPODPIĘTE:
    ├── Polityka prywatności + Regulamin + Cookies   ← treść napisana, brak adresu
    ├── Drugi kompletny landing                       ← zero użyć
    ├── Model lokalnej ankiety (297 linii)            ← zero użyć
    └── 5 punktów wejścia „konto użytkownika”         ← napisane, zablokowane

⚠ problem👻 sierota — istnieje, nikt do tego nie linkuje🚪 ślepa uliczka — wyjście tylko przez „wstecz”🎭 makieta udająca działający ekran

03Trzy menu, które się nie zgadzają

To jest korzeń większości problemów. Każde z trzech menu deklaruje w komentarzu, że jest „jednym źródłem prawdy”.

pozycjamenu aplikacji (5 pozycji)menu silnika (8 pozycji)
Ankieta
Edytor ankietyale klik nic nie robi✅ → /edytor
Mapa bloków✖ nie ma
Zespół✅ → /gabinet✅ → makieta
Użytkownicy
Gabinety✖ nie ma
Treść maili✖ nie ma
Moje konto✅ → panel administratora✅ → makieta
Skutek praktyczny: nie da się przez telefon powiedzieć „kliknij Moje konto”. W zależności od tego, gdzie użytkowniczka akurat stoi, trafi w panel administratora albo w makietę z cudzymi danymi.

04Ustawienia, które nie ustawiają

To jest najgorszy element całej struktury, bo wygląda na działający, a nie działa.

Okienko ⚙ Ustawienia w silniku ankiety zapisuje dane do pamięci przeglądarki. Wydruk czyta je z serwera. Po tym, jak konto raz zapisze swój profil na serwerze, ze wszystkich pól w tym okienku na wydruk przechodzi wyłącznie NIP — reszta jest po cichu ignorowana.

Praktycznie: higienistka zmienia adres gabinetu, widzi „zapisano”, drukuje plan — i na kartce jest stary adres. Bez żadnego ostrzeżenia.

Do tego dochodzi drugi panel z tymi samymi sześcioma polami — 🪪 Wizytówka — schowany w edytorze ankiety. Ten zapisuje na serwer, czyli działa. Tylko że jest w miejscu, do którego zwykła higienistka nie ma po co zaglądać.

Dwa miejsca na tę samą rzecz, zapisujące do dwóch różnych magazynów. Jedno z nich jest dostępne dla klientki i nie działa, drugie działa i jest schowane. Ekran „Moje konto”, który by to scalił, nie istnieje — jest tylko pozycja w menu.

05Mapa proponowana

Zasada porządkująca, z której wynika reszta: grupujemy według tego, czyją rzecz zmieniasz, a nie według tego, kto ma do niej prawo. Dziś jest odwrotnie — dlatego „Moje konto” wskazuje na panel administratora.

BEZ LOGOWANIA
├── /                          strona marketingowa
├── /partnerzy                 landing dla partnerów
├── /polityka-prywatnosci      ← treść JUŻ napisana, wystarczy podpiąć
├── /regulamin                 ← j.w.
└── /kontakt

PO ZALOGOWANIU — jedno menu, obecne na KAŻDYM ekranie
│
├── 📋 Ankieta                 /ankieta
│      Ankieta → Plan → Wydruk
│      to jest 90% czasu higienistki — zostaje tam, gdzie jest
│
├── ✏️ Moja ankieta            /moja-ankieta
│      moja wersja treści: pytania, bloki, kolejność
│
├── ⚙️ Moje konto              /moje-konto            ← DZIŚ NIE ISTNIEJE
│   ├─ Wizytówka na wydruku    (zakładka domyślna)
│   │     dane gabinetu · logo · LINKI I KODY QR
│   │     + podgląd wydruku na żywo obok pól
│   ├─ Subskrypcja             plan, ważność, faktury
│   └─ Profil                  e-mail, hasło, logowanie dwuetapowe
│
├── 👥 Gabinet                 /gabinet     ← tylko właścicielka gabinetu
│   ├─ Zespół                  lista, zaproszenia, role
│   └─ Ustawienia gabinetu     wspólne logo i linki · kto ma własną wersję
│
└─────────────── separator ───────────────
    ADMIN — osobna grupa na końcu tego samego paska
    ├── 🧑‍💼 Użytkownicy
    ├── 🏢 Gabinety
    ├── ✉️ Treść maili
    ├── 📝 Treść globalna       ← dziś wymieszana z „Moją ankietą”
    └── 🗺️ Mapa bloków

WEJŚCIA BOCZNE — bez menu, bo to jednorazowe przejścia
├── /zaloz-gabinet             z landingu i z „Moje konto”
└── /akceptuj-zaproszenie      z linku w mailu

Znika: makieta /menu, trzy makiety /preview/*, /dev jako drugie wejście, okienko ⚙ Ustawienia w silniku, martwa zakładka „Edytor bloków”, okienko „szczegóły”.

06Co i dlaczego

Przy każdej zmianie: powód i szacowany koszt roboty.

Jedno menu zamiast trzech średnia robota

Trzy listy, które miały być jedną, już się rozjechały — ta sama etykieta prowadzi w dwa różne miejsca. To nie jest problem estetyczny: uniemożliwia wsparcie telefoniczne i gwarantuje, że każda kolejna zmiana pogłębi rozjazd.

Menu na każdym ekranie średnia robota

Dziś ma je jeden ekran na jedenaście. Siedem ekranów to ślepe uliczki — wchodzisz i jedyne wyjście to przycisk „wstecz” przeglądarki.

Dla higienistki pracującej przy pacjencie to jest poważne: plan pacjenta żyje wyłącznie w pamięci przeglądarki — taka jest obietnica HIGI, że dane nie idą na serwer. Odruchowe zamknięcie karty niszczy pracę, której nie da się odzyskać.

To jedna zmiana, która likwiduje siedem problemów naraz.

Powstaje „Moje konto” duża robota

Dziś taki ekran nie istnieje. Higienistka nie ma żadnego miejsca, w którym ustawi swoje dane na wydruk i swoje linki do kodów QR — jedyne, co ma, to okienko, które nie działa (sekcja 04).

Trzy zakładki, w kolejności od najczęściej dotykanej:

a) Wizytówka na wydruku — dane gabinetu, logo, linki generujące kody QR. Razem, bo to jedna rzecz: wszystko to jest treścią, którą pacjent dostaje na kartce. Stąd też podgląd wydruku obok pól, na żywo. Higienistka nie ustawia tu konfiguracji — ona redaguje kartkę, którą za chwilę wręczy pacjentowi.

b) Subskrypcja — plan, do kiedy ważny, faktury.   c) Profil — e-mail, hasło, logowanie dwuetapowe.

Wylogowanie nie jest zakładką — siedzi w pasku górnym, dostępne z każdego ekranu.

Dlaczego duża robota: to nowy ekran plus serwer. Pięć punktów wejścia „konto użytkownika” jest już napisanych, ale są zablokowane i trzeba je najpierw dokończyć.

Edytor dzieli się na dwa adresy średnia robota

/moja-ankieta — moja wersja. /admin/tresc — wersja fabryczna, dla wszystkich.

Dziś jeden ekran robi jedno i drugie, a różnicę widać po małym przełączniku. To dokładnie ta pomyłka, która kosztowała nas lipcowy incydent: higienistka przez wiele godzin edytowała swój prywatny szablon i publikowała, a pacjent nadal widział wersję globalną. Dwa różne adresy z dwiema różnymi nazwami czynią tę różnicę niemożliwą do przeoczenia.

Admin zostaje w tym samym pasku mała robota

Osobna grupa na końcu menu, z plakietką — nie osobny portal administracyjny.

Dlaczego: zespół ma widzieć produkt tymi samymi oczami, co klientka. Osobny portal gwarantuje, że przestaje. Dziś jest gorzej niż osobny portal — administrator po zalogowaniu ląduje w edytorze, nie w ankiecie, więc domyślnie nie widzi tego, co widzi użytkowniczka.

Reguła doboru pozycji: nie pokazuj pozycji, której kliknięcie skończy się odmową. Blokada z powodu roli → pozycja znika z menu. Blokada z powodu braku opłaty → pozycja zostaje, z plakietką i ekranem sprzedażowym — bo to użytkowniczka może zmienić.

Makiety znikają z menu mała robota

Makieta „Moje konto” pokazuje jako „przykład” prawdziwe dane osobowe, a jest podlinkowana z żywego menu. Formularze tam niczego nie zapisują. To materiał roboczy, który trafił do produktu.

Polityka prywatności i Regulamin dostają adresy mała robota

Treść jest już napisana i leży w repozytorium, a przyciski w stopce są martwe — „Polityka prywatności” i „Regulamin” nic nie robią, „Kontakt” prowadzi donikąd. To najtańsza poprawka w całym zestawieniu i jednocześnie wymóg prawny przed wpuszczeniem prawdziwych klientek.

Adresy zostają po polsku bez kosztu

Wyszukiwarka i tak widzi tylko stronę główną i landing dla partnerów — reszta jest za logowaniem, więc pozycjonowanie nie jest argumentem. Koszt zmiany byłby za to rozproszony w miejscach, o których się zapomina: lista dozwolonych adresów powrotnych w usłudze logowania, przekierowania, obie kopie menu, dokumenty na Dysku, wysłane maile.

Spisujemy natomiast zasadę, żeby ktoś tego później „nie poprawił”: jedno słowo na pojęcie, tylko małe litery bez polskich znaków (inaczej adres rozsypuje się na krzaki), /admin zostaje technicznym przedrostkiem z polskimi dziećmi.

⚠️ Jedno ostrzeżenie na przyszłość: wydrukowanej kartki nie da się poprawić zdalnie. Pierwszy adres aplikacji, który pojawi się na wydruku u pacjenta, zamraża się na zawsze.

07Cztery pytania do decyzji

  1. Czy „Moja ankieta” — edycja własnej wersji treści — ma być dostępna dla zwykłej higienistki, czy tylko dla gabinetu i administratora?

    Dziś plakietka mówi „admin”, ale faktycznie ma to każdy. Trzeba zdecydować, co ma być prawdą — bo to zmienia i menu, i uprawnienia.

  2. Czy /dev jako drugie wejście jest jeszcze potrzebne?

    Na domenie deweloperskiej i tak przekierowuje na stronę główną, więc dubluje. Jeśli nie — jedna rzecz mniej do utrzymania.

  3. Kolejność prac.

    Propozycja: najpierw uporządkowanie uprawnień (godziny) → potem menu wszędzie (likwiduje siedem ślepych uliczek, dzień) → potem „Moje konto” (największa robota, ale bez niego higienistka nie ustawi swoich kodów QR).

  4. Czy podpiąć Politykę prywatności i Regulamin od razu?

    Pół godziny, treść gotowa. Bez tego nie da się wpuścić prawdziwych klientek.