Zum Inhalt springen

PHP-Architektur, die sich selbst durchsetzt

Du definierst die Architektur. Der Jardis Builder erzwingt sie auf Dateisystem-Ebene. Hexagonale Architektur, CQRS und Domain Events als generierte Struktur, nicht als Konvention die nach Sprint 10 niemand mehr einhält.

Deine Architektur existiert nur auf Whiteboards.

Sprint 1 sieht sauber aus. Sprint 10 ist ein anderes System. Und du verbringst mehr Zeit mit Verteidigen als mit Entwerfen.

Architektur-Erosion mit jedem Sprint

Du definierst Hexagonale Architektur. Das Team nimmt Shortcuts. Nach sechs Monaten hat jeder Service eine andere Interpretation deiner Vorgaben. Die Architektur auf dem Whiteboard und die im Code sind zwei verschiedene Systeme.

Konventionen die niemand einhält

Ports und Adapters als Namenskonvention. Repository Pattern als Wiki-Eintrag. CQRS als Slide-Deck. Alles dokumentiert, nichts durchgesetzt. Jedes Code Review wird zur Diskussion über Architektur-Compliance statt über Business-Logik.

Architektur-Verletzungen in Produktion

Ein Service greift direkt auf die Datenbank eines anderen zu. Ein Command Handler enthält Query-Logik. Ein Domain Event wird synchron verarbeitet. Du findest es im Review, oder schlimmer: in Produktion.

Wie Jardis Software-Architektur durchsetzt.

Der Jardis Builder generiert die gesamte Architektur-Infrastruktur aus einer Schema-Definition. Keine Konvention die jemand ignorieren kann. Physische Trennung auf Dateisystem-Ebene.

STRUCTURE ENFORCEMENT

Hexagonale Architektur als Dateisystem, nicht als Konvention

Ports, Adapters, Application Layer, Domain Layer: der Builder generiert die komplette Verzeichnisstruktur. Kein Entwickler muss raten, wo eine Klasse hingehört. Die Architektur ist die Ordnerstruktur. Kein Drift möglich.

PATTERN CONSISTENCY

CQRS, Events und Repositories aus einer Definition

Commands, Queries, Domain Events und die Repository Pipeline werden aus dem Schema generiert. Jeder Bounded Context folgt exakt denselben Patterns. Ob Team A oder Team B, ob Junior oder Architect: der Output ist strukturell identisch.

ARCHITECTURE AS CODE

ADRs die im generierten Code ankommen

Du triffst eine Architektur-Entscheidung. Der Builder setzt sie in jedem neuen Bounded Context um. Automatisch. Keine Lücke zwischen Entscheidung und Implementierung. Deine Architektur lebt im Repository, nicht in Confluence.

Sieh selbst, was aus drei Dateien entsteht.

Drei Definitionsdateien rein, ein kompletter Bounded Context raus. Klick dich durch den generierten Code.

E-Commerce / Sales
schema.yaml
# Database Schema — Sales Bounded Context
# This file defines the persistent storage structure.

schema:
  domain: ECommerce
  boundedContext: Sales

tables:
  order:
    columns:
      id:
        type: integer
        primary: true
        autoIncrement: true
      public_id:
        type: uuid7
        unique: true
      customer_email:
        type: string
        length: 255
      status:
        type: string
        length: 32
        default: "draft"
      total_amount:
        type: integer
      currency:
        type: string
        length: 3
        default: "EUR"
      created_at:
        type: datetime
      updated_at:
        type: datetime
        nullable: true

  order_item:
    columns:
      id:
        type: integer
        primary: true
        autoIncrement: true
      order_id:
        type: integer
        foreignKey:
          table: order
          column: id
          onDelete: cascade
      product_name:
        type: string
        length: 255
      sku:
        type: string
        length: 64
      quantity:
        type: integer
      unit_price:
        type: integer
      line_total:
        type: integer
Dateien
Definitions (Input)
Generated Code (Output)
BUILDER OUTPUT
80%
Architektur-Infrastruktur generiertEntities, Commands, Queries, Domain Events, API Contracts und die Repository Pipeline. Du reviewst Business-Logik, nicht Architektur-Infrastruktur.
3x
schnellere Pattern-Konsistenz über Teams
0
Architektur-Verletzungen in generierten Strukturen
KONSISTENZ
100%
hexagonale Struktur in jedem Bounded ContextJeder generierte Service folgt derselben Ports-und-Adapters-Architektur. Keine Abweichung, keine Interpretation, keine Shortcuts.

Warum Software-Architekten auf Jardis setzen.

Weniger Verteidigen, mehr Entwerfen. Architektur die sich selbst durchsetzt.

> Layer Enforcement

Physische Schichten statt logische Konventionen

Application, Domain und Infrastructure als getrennte Packages. Der Builder erzwingt die Abhängigkeitsrichtung. Kein Service kann die Schichtgrenzen verletzen, weil sie im Dateisystem verankert sind.

> Pattern Precision

Jeder Bounded Context folgt deinem Architektur-Blueprint

Du definierst die Patterns einmal. Der Builder reproduziert sie in jedem neuen Context exakt gleich. Hexagonale Architektur, CQRS, Repository Pipeline. Konsistent, wiederholbar, reviewbar. Ob Team A oder Team B: der Output ist strukturell identisch.

> Review Focus

Code Reviews für Business-Logik, nicht für Struktur

80% des technischen Unterbaus ist generiert und architektur-konform. Deine Reviews konzentrieren sich auf das, was zählt: Domain-Logik, Fachlichkeit, Korrektheit. Nicht auf fehlende Interfaces oder falsche Verzeichnisse.

Bereit, Architektur zu kodifizieren statt zu dokumentieren?

Auf die Waitlist

Struktur kostet weniger als Chaos.

Kostenloser Trial

Teste Jardis 7 Tage kostenlos

Lass Jardis an deiner echten Domäne los. Discovery, Struktur und dein erster Platform Build.

Join Waitlist
20 Discovery Runs
5 Structure Builds
1 Platform Build
Alle Jardis Packages als Open Source
Jardis Base
29 €pro Monat

Die komplette DDD-Architektur mit allen Klassen und Contracts. Dein Team schreibt Features, nicht Infrastruktur.

Join Waitlist
Unlimited Discovery Runs
Unlimited Structure Builds
Alle 26 Jardis Packages enthalten
PHPStan Level 8 von Anfang an
Jardis Pro
180 €pro Monat

Die komplette Business-Logik mit Handlern, Validierung und Pipelines. Was früher ein Sprint war, ist jetzt ein Build.

Join Waitlist
Alles aus Jardis Base
Commands, Queries, Events direkt implementiert
Platform Code in Sekunden statt Wochen
Weitere Runs für 89 € einzeln
Enterprise

Mehr als 20 Platform Builds pro Monat?

Lass uns sprechen

Sei dabei, wenn Jardis startet.

Trag dich ein. Du bekommst Zugang, sobald wir live gehen. Inklusive kostenlosem Trial.

100+ Entwickler warten bereits auf den Launch

Neugierig, wie Jardis funktioniert?

Jardis entdecken

Häufige Fragen

Antworten auf die wichtigsten Fragen von Software-Architekten zu Jardis.

Ja. Der Jardis Builder generiert hexagonale PHP-Architektur mit Ports und Adapters. Die generierten Strukturen folgen etablierten DDD-Patterns: 3-Layer Entities, Commands, Queries, Domain Events und Repository Pipeline. Der Output ist plain PHP, kein proprietäres Framework.