01. Problem
Fundacja Lepszy Świat prowadzi działalność interwencyjną — przyjmuje zgłoszenia o przypadkach wymagających reakcji w zakresie ochrony zwierząt (zwierzęta bezdomne, zaniedbane, ranne, w sytuacjach kryzysowych). Wcześniej zgłoszenia spływały przez różne kanały bez wspólnego rejestru:
- Rozproszone kanały zgłoszeniowe — telefon, mail, Facebook, Messenger, wiadomości na stronie. Brak jednego miejsca, w którym można było zobaczyć wszystkie sprawy.
- Brak statusów i przypisania — nie było jasne, kto i kiedy się zajmuje konkretną sprawą.
- Trudna lokalizacja zdarzeń — opisy podawane przez zgłaszających często były nieprecyzyjne ("przy lesie za sklepem", "obok przystanku"). Brak mapy, brak współrzędnych, brak strukturyzowanych danych adresowych.
- Brak komunikacji ze zgłaszającym — osoba, która zgłosiła sprawę, nie miała żadnej informacji zwrotnej. Czy fundacja podjęła sprawę? Czy zwierzę zostało uratowane? Często — cisza.
- Brak narzędzi do statystyk — fundacja nie wiedziała ile zgłoszeń dostaje miesięcznie, w których województwach jest najwięcej, jakie typy zdarzeń się powtarzają. Bez tych danych trudno planować akcje, szukać finansowania i pokazywać darczyńcom skalę działalności.
02. Rozwiązanie
Dedykowana aplikacja webowa składająca się z dwóch zintegrowanych części: publicznego formularza zgłoszeniowego (na stronie fundacji) i wewnętrznego panelu zarządzania (dla zespołu).
Część publiczna — formularz zgłoszeniowy
Pięciokrokowy formularz dostępny dla każdego, kto chce zgłosić interwencję:
- Opis sytuacji — pole tekstowe, jedyny element wymagany
- Mapa interaktywna (OpenStreetMap + Leaflet) — kliknięcie na mapie automatycznie uzupełnia ulicę, miasto, kod pocztowy, województwo i powiat. Alternatywnie: ręczne wpisanie z automatycznym przesunięciem mapy.
- Zdjęcia (opcjonalnie) — do 5 plików, JPG/PNG/GIF, max 5 MB każdy. Dokumentacja sytuacji ułatwia ocenę przed wysłaniem zespołu.
- Dane kontaktowe (opcjonalnie) — email, telefon, preferowane godziny kontaktu. Jasna informacja: "bez kontaktu nie otrzymasz potwierdzenia realizacji".
- Wysyłka — automatyczna walidacja, komunikat sukcesu, formularz gotowy do kolejnego zgłoszenia.
Część wewnętrzna — Portal Interwencyjny
Panel dla zespołu fundacji z trzema rolami uprawnień:
- Pulpit ze statystykami — łączna liczba zgłoszeń, nowe, w toku, zakończone, wysokie zagrożenie, nieprzypisane. Wykres napływu zgłoszeń z 14 dni. Lista zgłoszeń przypisanych do zalogowanego użytkownika.
- Lista zgłoszeń — tabela z numerem, statusem (Nowy / W toku / Zrealizowany), poziomem zagrożenia (1-5, kolorowane), opisem, lokalizacją, datą, osobą przypisaną. Wyszukiwanie, filtrowanie (status, poziom, województwo, osoba), sortowanie, stronicowanie.
- Szczegóły zgłoszenia — pełny opis, mapa z lokalizacją + przycisk "Pokaż w Google Maps", dane kontaktowe, zdjęcia w trybie pełnoekranowym, notatki wewnętrzne (widoczne tylko dla zespołu).
- Obsługa zgłoszenia — zmiana statusu, poziomu zagrożenia, przypisanie do osoby. Każda zmiana zapisywana natychmiast.
- Wiadomość do zgłaszającego — możliwość wysłania emaila bezpośrednio z panelu (potwierdzenie podjęcia, informacja o realizacji).
- Zarządzanie użytkownikami — dodawanie, edycja, usuwanie kont z trzema rolami.
System ról
- Wolontariusz — może przeglądać zgłoszenia
- Inspektor — może przeglądać i obsługiwać zgłoszenia (zmiana statusu, przypisanie, wysyłanie wiadomości)
- Administrator — pełny dostęp, w tym zarządzanie użytkownikami
Trzy role zaprojektowano pod realny przebieg pracy: zespół główny fundacji ma dostęp pełny lub inspektora, partnerzy regionalni (osoby i organizacje z innych części Polski, którym fundacja deleguje zgłoszenia) — odpowiednio mniejsze uprawnienia.
Powiadomienia mailowe
- Fundacja dostaje email o każdym nowym zgłoszeniu (na adres ogólny)
- Osoba zgłaszająca dostaje email o realizacji (jeśli podała kontakt)
- Inspektor dostaje email o przypisaniu do zgłoszenia
03. Stack i architektura
Stack dobrany pod dwuczęściową architekturę (publiczny formularz + wewnętrzny panel) z integracją z istniejącą stroną WordPress:
- Laravel — backend aplikacji portalu, API dla formularza zgłoszeniowego, system uprawnień i ról
- Vue 3 + Inertia.js — frontend portalu (panel zespołu), responsywny, jeden monolityczny app
- Leaflet + OpenStreetMap — interaktywna mapa w formularzu i widoku szczegółów zgłoszenia (otwarte rozwiązanie, brak kosztów API jak Google Maps)
- Integracja z WordPress — formularz zgłoszeniowy osadzony na stronie fundacji (
fundacjalepszyswiat.pl), komunikacja z portalem przez API
Architektura komunikacji
Wybór dwuczęściowej architektury (formularz w WordPress + portal osobny) miał trzy uzasadnienia:
- Łatwa edycja strony przez zespół — członkowie fundacji edytują WordPressa bez ryzyka, że ktoś przypadkiem zmieni coś w portalu
- Bezpieczeństwo — oddzielenie publicznej części od panelu zespołu sprawia, że atak na formularz nie daje dostępu do danych zgłaszających ani historii zgłoszeń
- Delegacja regionalna — fundacja przekazuje część zgłoszeń zaprzyjaźnionym osobom i organizacjom z innych regionów Polski. Te osoby dostają dostęp do portalu z odpowiednią rolą (wolontariusz lub inspektor), ale nie do strony fundacji ani jej innych systemów.
04. Proces wdrożenia
Tydzień 1 — Analiza i mapowanie procesu
Rozmowy z zarządem fundacji o realnym przebiegu interwencji: kto przyjmuje zgłoszenia dziś, jak je przekazuje zespołowi, jak komunikuje się ze zgłaszającym, jakie są typowe scenariusze (sprawa pilna vs odłożona, wymagająca wyjazdu vs telefoniczna). Wynik: lista wymagań i mapa procesu obsługi.
Decyzje kluczowe: 5 poziomów zagrożenia (nie 3), 3 role (wolontariusz wystarczy bez prawa do edycji), integracja z mapą OpenStreetMap (nie Google), opcjonalność danych kontaktowych zgłaszającego.
Tydzień 2 — Implementacja
Budowa portalu od strony zespołu: pulpit ze statystykami, lista zgłoszeń z filtrami, widok szczegółów zgłoszenia, system ról i uprawnień, zarządzanie kontami. Równolegle — publiczny formularz na stronie fundacji z mapą i automatycznym uzupełnianiem adresu po kliknięciu. Konfiguracja powiadomień mailowych do zespołu i zgłaszających.
Tydzień 3 — Integracja, testy i wdrożenie
Połączenie formularza ze stroną fundacji w jeden spójny przepływ — od zgłoszenia, przez powiadomienie zespołu, obsługę w portalu, aż po komunikat zwrotny do osoby zgłaszającej. Testy z wykorzystaniem przykładowych zgłoszeń. Szkolenie zespołu plus dokumentacja w instrukcji PDF ze zrzutami ekranu.
05. Wyniki
Co zostało dostarczone:
- Jeden punkt wejścia dla zgłoszeń — publiczny formularz na stronie fundacji zastąpił rozproszony zestaw kanałów (mail, telefon, social media)
- Wspólny rejestr w portalu — cały zespół widzi wszystkie zgłoszenia w jednym miejscu, ze statusami i przypisaniami
- Precyzyjna lokalizacja — każde zgłoszenie ma adres pełen (ulica, miasto, kod, województwo, powiat) plus współrzędne GPS z mapy. Koniec z "obok przystanku za lasem".
- Komunikacja ze zgłaszającym — fundacja może w jednym kliknięciu wysłać potwierdzenie realizacji do osoby, która zgłosiła sprawę
- Statystyki działalności interwencyjnej — fundacja po raz pierwszy wie ile dostaje zgłoszeń, w których województwach, z jakim poziomem zagrożenia. Dane do raportów dla darczyńców i grantów.
- Trzy role uprawnień — wolontariusze mogą przeglądać zgłoszenia (śledzić działalność fundacji), członkowie fundacji obsługują, admin zarządza systemem