Hausarzt-Praxis Website (Kirby CMS) inkl. BFSG-Barrierefreiheit + Deployment-Doku
  • PHP 98.7%
  • CSS 0.8%
  • JavaScript 0.4%
Find a file
2026-07-15 16:04:48 +02:00
assets Move theme toggle to header right; add Firefox-compatible page fade transitions 2026-07-15 16:02:36 +02:00
content Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00
docs Add docs and README docs link 2026-07-15 16:04:48 +02:00
kirby Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00
media Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00
site Move theme toggle to header right; add Firefox-compatible page fade transitions 2026-07-15 16:02:36 +02:00
.dockerignore Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00
.gitignore Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00
.htaccess Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00
composer.json Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00
docker-compose.yml Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00
Dockerfile Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00
index.php Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00
README.md Add docs and README docs link 2026-07-15 16:04:48 +02:00
run.sh Replace AI hero SVG with CC0 medical graphic; add view-transition page animations 2026-07-15 15:03:55 +02:00

Website Hausarztpraxis Anja Skeide

Moderne, barrierefreie Website der Hausarztpraxis Anja Skeide (Magdeburg-Sudenburg), umgesetzt mit dem Kirby CMS (dateibasiert, kein Datenbankserver nötig). Die Seiten erfüllen die Vorgaben des a11y-Design-Systems (WCAG 2.1 AA) und bestehen den Prüfer validate.js (alle Seiten „grün“).

Sprache: Alle sichtbaren Inhalte sind auf Deutsch. Dateinamen, Feld- und Programm-Bezeichner sind bewusst auf Englisch gehalten.

Weitere Dokumentation: siehe /docs/ Deployment-Anleitung (deployment.md), Angebots-E-Mail (email-angebot.md) und Preis-Einschätzung (preis-einschaetzung.md).


1. Für die Praxis: Die Website aufrufen

Seiten: Startseite, Praxis & Team, Leistungen, Kontakt, Impressum, Datenschutz.


2. Inhalte bearbeiten das Kirby-Panel (für die Rezeption)

Sie brauchen keine Programmierkenntnisse. Alles wird bequem im Browser gepflegt.

2.1 Anmelden

  1. Öffnen Sie http://192.168.2.106:8090/panel
  2. Beim allerersten Mal legen Sie ein Konto an (Name, E-Mail, Passwort). Merken Sie sich die Zugangsdaten gut.
  3. Danach melden Sie sich künftig mit E-Mail + Passwort an.

Sicherheitshinweis für die IT: Nach dem Anlegen des ersten Kontos in site/config/config.php 'install' => false setzen (siehe Abschnitt 6).

2.2 Öffnungszeiten ändern

  1. Im Panel oben auf „Öffnungszeiten“ klicken.
  2. In der Tabelle Öffnungszeiten die Zeile eines Tages anpassen (Tag, Zeit, Hinweis) oder mit „+ Zeile hinzufügen“ ergänzen.
  3. Feld „Akut-/offene Sprechstunde“ ändert den blau hervorgehobenen Hinweis.
  4. Oben rechts Speichern. Die Änderung erscheint sofort auf Startseite und Kontaktseite.

2.3 Kontaktdaten / Adresse ändern

  1. Reiter „Praxis & Kontakt“.
  2. Telefon, SMS, Fax, E-Mail, Straße, PLZ, Ort, Zugang/Barrierefreiheit anpassen.
  3. Speichern. Die Daten werden überall automatisch aktualisiert (Kopf, Fuß, Kontaktseite).

2.4 Einen Hinweis / eine Notiz veröffentlichen

Es gibt bewusst keinen News-/Blog-Bereich (wie auf der alten Seite). Kurzfristige Hinweise (z. B. Urlaub, Vertretung) tragen Sie am besten so ein:

  • Startseite → „Willkommenstext“: Text ergänzen (z. B. „Vom 1.14. August ist die Praxis im Urlaub.“), Speichern.
  • Für einen auffälligen Kasten das Sternchen-Format nutzen: **Fettdruck**.

2.5 Leistungen bearbeiten

  1. Reiter „Leistungen“ → Liste „Leistungen“: einzelne Einträge (Name + Beschreibung) ändern, hinzufügen oder löschen. Speichern.

2.6 Impressum / Datenschutz anpassen

  1. Reiter „Impressum“ bzw. „Datenschutz“ → Textfeld bearbeiten.
  2. Speichern.

Wichtig: Impressum und Datenschutz sind rechtlich sensibel. Lassen Sie die Texte vor Veröffentlichung anwaltlich bzw. durch die Ärztekammer prüfen. Die aktuell hinterlegten Texte sind Platzhalter mit den bekannten Praxis-Angaben.


3. Online-Terminbuchung ein-/ausschalten (Doctolib / samedi)

Die Website beherrscht beide Varianten:

  • (a) AUS Standard dieser Praxis: Es wird nur Telefon/E-Mail/SMS angezeigt (die alte Seite hatte bewusst keine Online-Buchung).
  • (b) EIN: Zusätzlich erscheint ein Button „Termin online buchen“ (Doctolib oder samedi).

Umschalten (dauert 30 Sekunden):

  1. Panel → Reiter „Terminbuchung“.
  2. Schalter „Online-Terminbuchung aktivieren“ auf Ein.
  3. Buchungsanbieter wählen (Doctolib oder samedi).
  4. Buchungs-URL einfügen (z. B. Ihre Doctolib-Profil-Adresse).
  5. Speichern. Der Button erscheint sofort auf Start- und Kontaktseite.

Zum Abschalten den Schalter wieder auf Aus stellen.


4. Karte (OpenStreetMap) & Datenschutz

Die Karte lädt erst nach Klick auf „Karte laden“ (DSGVO-konforme Zwei-Klick-Lösung) vorher werden keine Daten an OpenStreetMap gesendet. Die Koordinaten pflegen Sie im Panel unter „Karte (OpenStreetMap)“ (Breiten-/Längengrad, Zoom). Bitte die voreingestellten Koordinaten prüfen.


5. Technischer Betrieb (für die IT)

Voraussetzungen

  • Docker (getestet mit Docker 26). Kein PHP/Composer auf dem Host nötig alles läuft im Container (PHP 8.2 + Apache, Kirby-Core ist eingebaut).

Starten

Mit Docker-Compose-Plugin:

docker compose up -d --build

Ohne Compose-Plugin (dieser Host) gleichwertig per docker:

./run.sh

Danach läuft die Seite auf Port 8090 (0.0.0.0, also auch im LAN erreichbar).

Prüfen

curl -sS -o /dev/null -w "%{http_code}\n" http://localhost:8090/    # -> 200

Datenhaltung

Redaktionelle Inhalte, Uploads und Panel-Konten liegen in benannten Docker-Volumes (hausarzt_content, hausarzt_media, hausarzt_accounts, hausarzt_sessions) und überstehen einen Neustart/Neubau. Beim ersten Start werden sie aus den mitgelieferten Inhalten befüllt.

Stoppen / Neustart

docker rm -f hausarzt-kirby      # stoppt & entfernt den Container (Daten bleiben im Volume)
./run.sh                         # neu bauen & starten

6. Sicherheit / Produktion (Checkliste)

  • Kirby-Lizenz kaufen (~99 €) unter https://getkirby.com/buy und im Panel aktivieren. Ohne Lizenz läuft die Seite technisch, im Panel erscheint aber ein Lizenz-Hinweis. Für den öffentlichen Produktivbetrieb ist die Lizenz erforderlich.
  • Nach Anlegen des ersten Panel-Kontos in site/config/config.php 'panel' => ['install' => false] setzen und neu bauen (./run.sh).
  • HTTPS/Domain über einen Reverse-Proxy (z. B. das vorhandene Setup) vorschalten.
  • Impressum & Datenschutz rechtlich prüfen lassen.
  • Karten-Koordinaten kontrollieren.

7. Projektstruktur (Kurzüberblick)

content/           Inhalte (deutsch, Panel-editierbar)
site/blueprints/   Panel-Formulare  (englische Feld-Keys)
site/templates/    Seiten-Vorlagen  (home, practice, services, contact, imprint, privacy)
site/snippets/     Bausteine        (header, footer, hours, map, booking)
site/config/       Kirby-Konfiguration
assets/css/main.css  Design (alle Farben aus a11y-Design-System-Tokens, Hell/Dunkel)
assets/js/main.js    Karte-Zwei-Klick + Hell/Dunkel-Umschalter (optional, ohne JS nutzbar)
kirby/             Kirby-Core (eingebaut)
Dockerfile, docker-compose.yml, run.sh   lokaler Betrieb

Barrierefreiheit prüfen (aus dem geklonten Design-System heraus):

node /opt/data/axess_work/a11y-design-system/validate.js <seite.html>   # Exit 0 = OK