From e67f279af36ab348a85e4f3cd9ad2fcece562245 Mon Sep 17 00:00:00 2001 From: Headgent Development Date: Tue, 9 Jun 2026 15:32:28 +0200 Subject: [PATCH] docs(seo): sharpen README + composer.json metadata, add doc-aware pre-push hook --- README.md | 4 ++-- composer.json | 6 ++++-- support/makefile/hooks.mk | 8 ++++++++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 62d8463..59ff627 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,9 @@ [![PSR-12](https://img.shields.io/badge/Code%20Style-PSR--12-blue.svg)](phpcs.xml) [![Coverage](https://img.shields.io/badge/Coverage-95.14%25-brightgreen.svg)](https://github.com/jardisSupport/secret) -> Part of the **[Jardis Business Platform](https://jardis.io)** — Enterprise-grade PHP components for Domain-Driven Design +> Part of **[Jardis](https://jardis.io)** — the Domain-Driven Design platform for PHP. You model your domain; Jardis generates the production-ready hexagonal code (DTOs, Command/Query handlers, repositories, persistence). This package is part of the open-source foundation that generated code runs on. -Secret resolution for encrypted configuration values. Encrypt secrets with AES-256-GCM or Sodium, store them safely in `.env` files, and decrypt transparently at load time. Plugs into the DotEnv cast chain — no manual decryption calls needed. +Encrypted .env secrets for PHP — encrypt configuration values with AES-256-GCM or Sodium, store them safely in `.env` files, and decrypt transparently at load time. Plugs into the DotEnv cast chain — no manual decryption calls needed. --- diff --git a/composer.json b/composer.json index be0658b..dda53b0 100644 --- a/composer.json +++ b/composer.json @@ -44,13 +44,15 @@ "secret", "encryption", "aes", + "aes-256-gcm", "sodium", "dotenv", "environment", - "domain driven design", + "domain-driven-design", + "php", "jardisSupport", "jardisport", "jardis", - "Headgent" + "headgent" ] } diff --git a/support/makefile/hooks.mk b/support/makefile/hooks.mk index fc38374..902809e 100644 --- a/support/makefile/hooks.mk +++ b/support/makefile/hooks.mk @@ -7,6 +7,14 @@ install-hooks: ## Install git hooks (pre-commit + pre-push) @echo '# Jardis Pre-Push Hook — Quality Gate' >> .git/hooks/pre-push @echo 'set -e' >> .git/hooks/pre-push @echo 'echo "=== Jardis Pre-Push Quality Gate ==="' >> .git/hooks/pre-push + @echo '# Doku-Fast-Path: keine *.php geaendert -> PHP-Gates ueberspringen (kein --no-verify, der Hook entscheidet korrekt)' >> .git/hooks/pre-push + @echo 'base="$$(git rev-parse --abbrev-ref --symbolic-full-name @{u} 2>/dev/null || echo origin/develop)"' >> .git/hooks/pre-push + @echo 'changed="$$(git diff --name-only "$$base"...HEAD 2>/dev/null)"' >> .git/hooks/pre-push + @echo 'if ! echo "$$changed" | grep -q "[.]php$$"; then' >> .git/hooks/pre-push + @echo ' echo ">>> Nur Doku/Metadaten geaendert (keine *.php) — phpcs/phpstan/phpunit uebersprungen"' >> .git/hooks/pre-push + @echo ' echo "=== Quality Gate (Doku-Fast-Path) bestanden ==="' >> .git/hooks/pre-push + @echo ' exit 0' >> .git/hooks/pre-push + @echo 'fi' >> .git/hooks/pre-push @echo 'echo ">>> make phpcs"' >> .git/hooks/pre-push @echo 'make phpcs || { echo "PHPCS fehlgeschlagen — Push abgebrochen"; exit 1; }' >> .git/hooks/pre-push @echo 'echo ">>> make phpstan"' >> .git/hooks/pre-push