Alba — klinika stomatologiczna
Premium strona kliniki stomatologicznej z własnym CMS-em, działająca produkcyjnie na utwardzonym VPS — edytowalne treści, galeria metamorfoz, rezerwacja online i dane pacjentów obsłużone z myślą o RODO.
- Kategoria
- Strona kliniki + CMS / Własny serwer
- Branża
- Medycyna / Stomatologia
- Strona
- alba.oksoftware.co
Alba to kompletny, produkcyjny serwis kliniki stomatologicznej: szybka strona publiczna, którą klinika edytuje samodzielnie, panel redakcyjny oraz infrastruktura postawiona od pustego serwera do wdrożenia z monitoringiem i kopiami zapasowymi. To projekt referencyjny — klinika i jej dane są fikcyjne — pokazujący, jak od początku do końca powinna wyglądać nowoczesna i bezpieczna strona gabinetu.



Wyzwanie
Strony gabinetów bywają wolne, trudne w aktualizacji i nieostrożne z danymi pacjentów: formularze kopiujące informacje o zdrowiu do skrzynek e-mail, zewnętrzne widżety ładowane przed jakąkolwiek zgodą, panele administracyjne otwarte na cały internet. Celem była strona, która wygląda premium, którą personel aktualizuje bez programisty i która na każdym poziomie poważnie traktuje dane pacjentów.
Podejście
Next.js jako strona publiczna i Strapi jako panel redakcyjny, oba na PostgreSQL za Caddy, całość w Dockerze na jednym VPS. Obrazy budują się w GitHub Actions i są wdrażane po SHA commita, więc każde wydanie jest powtarzalne, a cofnięcie zmian to jedno polecenie. Zabezpieczenia są warstwowe — sieć, serwer, HTTP, aplikacja i CMS — tak, by przełamanie jednej warstwy nie otwierało pozostałych.
Co zbudowaliśmy
- Strona publiczna: usługi, galeria metamorfoz z suwakiem przed/po, zespół z filtrem specjalizacji, aktualności, opinie pacjentów, kontakt
- CMS Strapi po polsku i angielsku — personel sam edytuje usługi, zespół, aktualności i galerię
- Formularz kontaktowy zapisywany wyłącznie w CMS-ie (bez kopii w e-mailu i logach), z automatycznym usuwaniem po okresie retencji
- Rezerwacja online osadzona jako iframe od zaufanego dostawcy — bez skryptów dostawcy na stronie
- Mapa ładowana dopiero po zgodzie odwiedzającego, więc nikt zewnętrzny nie dostaje wcześniej jego adresu IP
- Content-Security-Policy z nonce generowanym przy każdym żądaniu, ochrona CSRF, limity żądań i honeypot w formularzu
- Własny renderer treści — tekst z CMS-a nigdy nie trafia na stronę jako surowy HTML
- Publiczne API tylko do odczytu, CORS zamknięty do jednej domeny, odizolowana sieć bazy danych
- Utwardzony serwer: firewall obejmujący ruch Dockera, fail2ban, SSH wyłącznie na klucz, kontenery bez uprawnień roota
- Szyfrowane kopie zapasowe poza serwerem z przetestowanym odtwarzaniem, monitoring dostępności i skrypty audytu serwera
Wyniki
- Działa produkcyjnie pod adresem alba.oksoftware.co
- Każde wydanie odtwarzalne z jednego commita i odwracalne jednym krokiem
- Zgłoszenia pacjentów nie opuszczają systemu kliniki
- Uczciwie zaznaczony zakres: klinika, personel, opinie i dane kontaktowe to fikcyjne treści demonstracyjne
Stack
Next.js 16 (App Router), React 19, TypeScript, Tailwind CSS v4, Strapi 5, PostgreSQL 17, Caddy 2 z limitami żądań, Docker Compose, GitHub Actions z GitHub Container Registry, kopie zapasowe restic, VPS na Debianie.
Chcesz podobny system?
Bez handlowców — porozmawiaj z Lead Engineerem o swoim procesie.
