Jaraco GmbH

Eine Website für Menschen und KI: So liefern wir die neue Jaraco-Website aus

Eine Unternehmenswebsite hat zwei Aufgaben: Sie soll Menschen verständlich machen, was wir tun, und Informationen leicht auffindbar, nutzbar und pflegbar machen. Bei der Neugestaltung der Jaraco-Website haben wir beides berücksichtigt.

Eine Unternehmenswebsite hat zwei Aufgaben: Sie soll Menschen verständlich machen, was wir tun, und Informationen leicht auffindbar, nutzbar und pflegbar machen. Bei der Neugestaltung der Jaraco-Website haben wir beides berücksichtigt.

Entstanden ist eine schlanke, mehrsprachige Website für die Jaraco GmbH – mit einem praktikablen Redaktionsablauf, einer Staging-Umgebung und einem MCP-Server, über den KI-Clients auf unsere öffentlichen Informationen zugreifen können. Das Projekt zeigt auch, wie wir Software entwickeln und betreiben: Das System soll verständlich bleiben, wiederkehrende Aufgaben werden automatisiert und Änderungen lassen sich prüfen, bevor sie produktiv gehen.

Einfach durch die Website navigieren

Die Website bündelt unsere Leistungen, Projektberichte, Artikel, Unternehmensinformationen und Produktseiten zu Jarakube. Über die Hauptnavigation gelangen Besucher zu den verschiedenen Bereichen, können Blogbeiträge und Projektberichte durchstöbern und finden häufige Antworten im FAQ. Die Sprachwahl bietet Inhalte auf Deutsch, Englisch, Französisch, Spanisch und Niederländisch, soweit Übersetzungen verfügbar sind. Auf den Leistungsseiten und über die Kontaktmöglichkeiten können Interessierte direkt mit uns ins Gespräch kommen.

Viele Seiten stellen wir auch als Markdown bereit. Das ist praktisch für textbasierte Werkzeuge und liefert Suchmaschinen und KI-Systemen eine klare Textfassung der Inhalte. Strukturierte Metadaten und automatisch erzeugte Discovery-Dateien verfolgen dasselbe Ziel: Die Website soll für Menschen, Crawler und Assistenten verständlich sein.

Bewusst Low-Tech

Die öffentliche Website besteht aus statischem HTML, CSS und einer kleinen Menge JavaScript. Python-Skripte bereiten die Seiten und Inhaltsindizes während des Builds vor. Ein Webserver liefert anschließend die erzeugten Dateien aus. Für die Darstellung der Website benötigen wir weder ein umfangreiches Anwendungsframework noch serverseitiges Rendering zur Laufzeit.

So bleibt der Betrieb einfach und die Ausgabe gut nachvollziehbar. Statische Seiten lassen sich schnell ausliefern und zwischenspeichern. Eine Datenbank ist nicht nötig, nur um Unternehmensinformationen anzuzeigen. JavaScript übernimmt gezielte Interaktionen wie die Sprachauswahl und die Darstellung der Blogübersicht. Die Inhalte bleiben zugleich als erzeugtes HTML und Markdown verfügbar.

„Low-Tech“ heißt für uns, auf unnötige Komponenten zu verzichten, wenn sie das Problem nicht besser lösen. Automatisierung lassen wir dabei nicht weg: Die Build-Pipeline prüft Inhalte, erzeugt lokalisierte Seiten und Indizes sowie KI-Discovery-Dateien und MCP-Dokumentation und verpackt das Ergebnis als Container-Image.

Inhalte in Markdown ergänzen und auf Staging prüfen

Artikel und andere Inhaltsbereiche verwenden Markdown-Dateien für die Texte und kleine JSON-Manifeste für Titel, Zusammenfassungen, Veröffentlichungsdaten und Verweise auf Sprachfassungen. Für einen neuen Blogbeitrag ergänzt die Redaktion den Artikel und sein Manifest und trägt das Manifest in den Blog-Index ein. Anschließend wird die Änderung über Git eingereicht. Der Build prüft, ob die Inhaltsverweise vollständig sind, und erzeugt daraus Seiten und Indizes.

Änderungen können vor dem Merge in einem Pull Request besprochen und geprüft werden. Der Website-Workflow startet jedoch erst, wenn Änderungen nach develop oder main übertragen werden – nicht beim Öffnen eines Pull Requests. Ein Push auf develop erstellt einen Build und stellt ihn auf unserer Demo-Website jaraco-demo.jarakube.eu bereit. Dort können wir die tatsächliche Bereitstellung prüfen. Ein Push auf main folgt dem Produktivpfad unter jarakube.eu. Der Workflow kontrolliert, ob die ausgelieferte Website den erwarteten Quellstand meldet.

Qualitätsprüfungen vom Quellcode bis zur laufenden Website

Die Prüfungen laufen in mehreren Stufen. Vor dem Image-Build prüft der Workflow die Inhaltsmanifeste, erzeugt statische Seiten und Discovery-Dateien und führt einen Python-Test-Harness für die Seitengeneratoren mit Coverage aus. SonarQube analysiert die konfigurierten Quellbereiche statisch und setzt ein Quality Gate durch, bevor der Image-Build fortgesetzt werden kann.

Nach dem Build wird das Container-Image in die Registry übertragen und Trivy scannt es auf bekannte, behebbare kritische und hohe Sicherheitslücken im Betriebssystem und in Bibliotheken. Nur nach einem erfolgreichen Scan wird die Bereitstellung angestoßen. Anschließend prüft der Workflow den ausgelieferten Git-Stand und führt Playwright-End-to-End-Tests in Desktop- und Mobilbrowser-Konfigurationen aus. Die Tests prüfen Navigation, statische Seiten, Sprachwechsel, Inhaltslinks, Metadaten, FAQs und weitere wichtige Abläufe. develop wird auf der Demo-Website geprüft, main in der Produktion.

Danach führt OWASP ZAP einen grundlegenden Sicherheitsscan durch, gefolgt von einem automatisierten Nikito-Qualitäts- und Sicherheitsscan der bereitgestellten Umgebung. Diese Prüfungen bieten zusätzliche Abdeckung; ein Basisscan ist jedoch kein vollständiger Penetrationstest. Der Laufzeitcontainer arbeitet außerdem mit einem nicht privilegierten Benutzer und setzt Browser-Sicherheitsheader wie Content Security Policy, Frame-Schutz und Schutz vor MIME-Sniffing. Mit test-local-website.sh <theme> können Entwickler Seiten generieren, den Container bauen und eine lokale Instanz prüfen, bevor sie Änderungen pushen.

Dasselbe Vorgehen gilt für Leistungsseiten, Projektberichte und weitere Inhaltsbereiche. Autorinnen und Autoren können sich auf Markdown konzentrieren, während der Build Lokalisierung, statische Seitenerzeugung, Inhaltsindizes und die zugehörigen Discovery-Artefakte übernimmt.

Das Erscheinungsbild ändern, ohne Inhalte neu aufzubauen

Das Theme-System trennt die Gestaltung von den Inhaltsquellen. Theme-Konfiguration, CSS und wiederverwendbare Seitenpartiale bestimmen das Erscheinungsbild. Generatoren wenden diese Vorgaben auf die Shell-Seiten und Detailseiten an. Die Website enthält mehrere Themes. Administratoren können daher an Designvariablen und Styles arbeiten, ohne jeden Artikel oder jede Leistungsbeschreibung neu schreiben zu müssen.

Die Skills im Repository erleichtern diese Arbeit, wenn ein KI-Coding-Agent eingesetzt wird. Der Skill jaraco-website-css erklärt das Theme-System und die Zuständigkeiten für Styles. jaraco-website-detail-layout beschreibt Änderungen an generierten Detailseiten. jaraco-website-categorized-navigation dokumentiert Struktur, Lokalisierung und Verhalten der Navigation. Diese praktischen Anleitungen liegen direkt beim Projektcode. Ein Assistent kann dadurch die Konventionen der Website befolgen, statt bei jeder Änderung raten zu müssen.

Die Workflow- und Projektdokumentation beschreibt außerdem, wie aus den Quelldateien eine bereitgestellte Website wird. Zusammen geben die dokumentierten Build-Schritte und die gezielten Skills Administratoren einen klareren Weg von der Inhalts- oder Designänderung bis zur Prüfung.

Ein MCP-Server für strukturierte Interaktion

Zur Website gehört ein schreibgeschützter Model Context Protocol (MCP)-Server. Kompatible KI-Clients können damit Inhalte der Jaraco-Website strukturiert entdecken und lesen, darunter Blogbeiträge und Leistungsinformationen. Außerdem bietet der Server ein Werkzeug zum Entwerfen von E-Mails für Serviceanfragen. Das ist hilfreich, wenn ein Assistent Quellenmaterial benötigt oder einen ersten Entwurf erstellen soll, ohne den Seitenquelltext manuell auszulesen.

Die Website bleibt auch ohne MCP vollständig nutzbar. MCP ergänzt eine weitere Schnittstelle für Menschen, die mit KI-Assistenten und MCP-fähigen Anwendungen arbeiten. Inhaltsänderungen laufen durch denselben Build, sodass Website und MCP-Server auf dem gleichen Stand bleiben können.

Ausblick: A2A und WebMCP

MCP ist ein Baustein in einer sich wandelnden Landschaft für die Interaktion mit Agenten. Das Agent2Agent-Protokoll (A2A) konzentriert sich auf die Kommunikation und Koordination zwischen unabhängigen Agenten. A2A könnte es deutlich erleichtern, Verbindungen zwischen Diensten herzustellen: Agenten verschiedener Teams können die Fähigkeiten des jeweils anderen entdecken und über eine standardisierte Kommunikation zusammenarbeiten. WebMCP untersucht einen nativen Ansatz für den Browser, mit dem Websites Agenten strukturierte Werkzeuge anbieten können. So können Agenten klar beschriebene Aktionen nutzen, statt die Bedienoberfläche erraten zu müssen. Der Browserkontext ist besonders interessant, weil ein Agent über die bestehende Seitensitzung der nutzenden Person interagieren und so deren Identität und bereits eingerichtete Berechtigungen wahren kann. WebMCP entwickelt sich noch weiter, wirft aber bereits eine wichtige Frage für Website-Betreiber auf: Wie sollte eine Website ihre Inhalte und Funktionen einem Agenten erklären?

Unser MCP-Server bietet Assistenten bereits einen direkten Weg, Jaraco-Inhalte zu entdecken und zu lesen. Während sich A2A und WebMCP weiterentwickeln, interessiert uns, wie diese Schnittstellen zusammenspielen können und wie Website-Betreiber Sprachmodelle zu den passenden, maßgeblichen Inhalten auf ihren Seiten führen. Wie führen Sie LLMs zu den richtigen Inhalten auf Ihrer Website?

Website ausprobieren und eine KI-Suchmaschine fragen

Besuchen Sie jarakube.eu, sehen Sie sich unsere Leistungen und Projektberichte an, wechseln Sie die Sprache oder lesen Sie einen Artikel als Markdown. Probieren Sie anschließend diese Fragen in Perplexity oder im Google KI-Modus aus: Was macht die Jaraco GmbH? · Wie unterstützt Jarakube Platform Engineering? · Welche Beispiele für Workflow-Automatisierung hat Jaraco veröffentlicht?. Für dieselben Fragen im Google KI-Modus: Jaraco GmbH, Jarakube Platform Engineering oder Jaracos Workflow-Automatisierung. Folgen Sie den Quellen in den Antworten zurück zur Website und sehen Sie sich an, wie die Informationen dort aufbereitet sind.

Genau darum geht es: Unsere Arbeit soll auffindbar und überprüfbar sein – ganz gleich, ob jemand über einen Browser, eine Suchmaschine oder einen KI-Client zu uns kommt. Die Website zeigt im Kleinen dieselben Fähigkeiten, die wir für Kunden entwickeln: wartbare Software, nützliche Automatisierung und Bereitstellungswege, die Änderungen nachvollziehbar machen.

Wenn Sie eine eigene Website, Content-Plattform oder einen KI-gestützten Informationsdienst planen, sprechen Sie mit Jaraco. Wir besprechen gern einen praktikablen ersten Schritt.

Dieser Beitrag wurde mit Unterstützung großer Sprachmodelle (LLMs) erstellt.