Warum docopt?

docopt ist ein Beschreibungsstandard für CLIs.

Hin und wieder kommen wir Devs in den Genuss, eigene CLIs zu entwickeln. Häufiger jedoch kommen Opsler in den Genuss, CLIs anzuwenden. Wie praktisch wäre es, wenn sich CLIs einheitlich verhalten würden?

So wie OpenAPI ein Standard für REST-Schnittstellen ist, sehe ich docopt als das Äquivalent für CLIs.

Vorteile von docopt:

  • Ease of onboarding: Dadurch, dass sich CLIs ähnlich verhalten, fällt es uns als Nutzer leichter, sich in einem neuen CLI zurechtzufinden (zum Beispiel: --help vs -?).
  • Ease of collaboration: Im PHP-Ökosystem gibt es viele CLIs, und einige unterstützen die gleichen Argumente (z. B. PHPStan, PHPUnit – beide nutzen --debug, -vvv).
  • Automatisierung durch einheitliche Interfaces: Einheitliche Interfaces ermöglichen Automatisierungen, wie zum Beispiel die automatische Generierung der --help-Ausgabe (siehe symfony/console).

Kurzum: docopt macht das Leben einfacher.

Daher meine klare Lesempfehlung an Devs, Ops und alle, die möglicherweise Tools bereitstellen, die über ein Terminal ausgeführt werden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert