Skip to main content
Dieser Artikel basiert auf einer Quellcode-Analyse. Stand: Juli 2026, das Repository befindet sich in Entwicklung.

Was ist Laravel Package Skeleton?

Laravel Package Skeleton ist ein Starter-Template zum Erstellen von Laravel-Paketen.
Beim Ausführen von composer install startet automatisch ein interaktives Konfigurationsskript (configure.php), das Paketname, Vendor-Name, Namespace und die gewünschten Funktionen im Frage-Antwort-Format einrichtet. Anschließend kann sofort mit der Entwicklung begonnen werden.

Warum dieses Skeleton nötig ist

Wenn Sie ein Laravel-Paket „auf eigene Faust” beginnen, geht viel Zeit für die Einrichtung der Testumgebung, statischer Analyse, Code-Formatierung und GitHub Actions verloren – Aufgaben, die mit der eigentlichen Paketlogik nichts zu tun haben. Laravel Package Skeleton fasst die Best Practices, die das Laravel-Team in der eigenen Paketentwicklung nutzt, in einem einzigen Template zusammen. Damit überspringen Sie den Aufbau der Umgebung und beginnen direkt mit der Implementierung der Paketlogik.

Enthaltene Werkzeuge

Konfigurierbare Paketfunktionen

Bei den Prompts von composer install wählen Sie nur die tatsächlich benötigten Funktionen aus. Nicht ausgewählte Gerüstteile werden entfernt.

Konfigurierbare Werkzeuge

Wie bei den Funktionen lassen sich auch die Werkzeuge je nach Projekt ein- oder ausschalten.

Ablauf des Setups

1

Repository aus dem Template anlegen

Erstellen Sie über den Button Use this template auf GitHub ein neues Repository oder klonen Sie direkt.
2

Abhängigkeiten installieren

Beim Ausführen von composer install startet configure.php automatisch.
Wenn Sie das Skript manuell ausführen möchten, verwenden Sie die Option --no-scripts.
3

Prompts beantworten

Folgende Punkte werden im Frage-Antwort-Format eingerichtet.
  • Author Name / Email
  • Vendor-Name (z. B. kawax)
  • Paketname (z. B. my-package)
  • Paketbeschreibung
  • Klassenname (z. B. MyPackage)
  • Multi-Select der genutzten Funktionen
  • Multi-Select der genutzten Werkzeuge
  • Optionale automatische Erstellung eines GitHub-Repositorys (falls gh CLI authentifiziert ist)
4

Funktionsprüfung

Alle Prüfungen laufen der Reihe nach: PHPStan → Pint → Type-Coverage → Pest.
5

End-to-End-Test mit Workbench

Unter http://localhost:8000 startet eine kleine Laravel-App zur Prüfung des Pakets.

Nicht-interaktiver Modus

Wenn Sie das Setup aus CI oder einem Skript heraus ausführen, verwenden Sie das Flag --no-interaction.
Werden Feature-Flags gesetzt, sind nur diese Funktionen enthalten. Ohne Flags werden alle Funktionen aufgenommen.

GitHub Actions CI

Die im Skeleton enthaltene tests.yml ist ein Matrix-Build, der Tests über mehrere PHP-, Laravel- und OS-Kombinationen hinweg ausführt.
Was jeder Job ausführt:
  1. PHPStan (composer analyse) – Statische Analyse
  2. Pint (composer lint:check) – Stil-Check
  3. Type Coverage (composer test:types) – Prüfung auf 100 % Typabdeckung (nur Ubuntu)
  4. Pest (composer test:unit) – Unit-Tests (nur Ubuntu)

Changelog-Automatisierung

update-changelog.yml aktualisiert CHANGELOG.md automatisch beim GitHub-Release. release.yml klassifiziert Änderungen nach PR-Label und erzeugt daraus die Release Notes. Labels für Release Notes:

Was configure.php tut

configure.php ist ein einmalig ausgeführter Bootstrap. Nach der Ausführung wird die Datei entfernt.

Empfohlene GitHub-Einstellungen nach der Installation

Empfehlungen aus der README nach der Installation:
  • Dependabot-PRs manuell prüfen – ein Auto-Merge-Workflow ist nicht enthalten
  • Release-Notes-Labels anlegenbreaking, enhancement, bug, documentation, dependencies, maintenance, skip-changelog, duplicate
  • Branch-Schutz für main – da die Changelog-Automation via GitHub Actions in CHANGELOG.md committet, müssen die Branch-Protection-Regeln entsprechend angepasst werden
Zusätzliche Repository-Secrets sind nicht nötig. Die enthaltenen Workflows nutzen das eingebaute GITHUB_TOKEN von GitHub.

Aktueller Entwicklungsstand

  • GitHub-Repository: laravel/package-skeleton
  • Veröffentlichung: Juli 2026 (aktive Entwicklung)
  • Hinweis: Da sich das Projekt in einer frühen Phase befindet, können sich API und Aufbau noch ändern
Wer neu mit Laravel-Paketen beginnt, sollte dieses Template gegenüber einem selbst zusammengebauten Skeleton bevorzugen. Es steckt voller Best Practices, die das Laravel-Team über Jahre gesammelt hat.

Repository laravel/package-skeleton

Quellcode und aktuelle Informationen finden Sie hier.

Offizielle Dokumentation zur Paketentwicklung

Zu den Grundlagen der Laravel-Paketentwicklung konsultieren Sie bitte die offizielle Dokumentation.
Zuletzt geändert am 13. Juli 2026