genai/di suggesters (11)
-
PHP
genai/console
CLI layer (the twin of genai/web): a #[Command] attribute, a build-time CommandProcessor that compiles commands.php, and a PHP 5.3-safe Console runner that maps $argv to a command bean. Shares the same compiled container as the web front.
-
PHP
genai/google-form
Submit data to a Google Form from the server: POST to the form's formResponse endpoint, mapping your fields to entry.NNN ids. Best-effort with a short timeout so it never blocks the request (it returns false rather than throwing). curl with a stream fallback. PHP 5.3-safe.
-
PHP
genai/i18n
Localization for the GenAI stack — Spring-style message keys compiled from per-locale .ini catalogs into a reflection-free Cache\Messages, a Translator bean, a global __() view helper, and a LocaleInterceptor that resolves the request locale (?lang / session / Accept-Language). PHP 5.3-safe at runti
-
PHP
genai/messaging
Provider-agnostic messaging front (the third twin of genai/web and genai/console): the Producer/Consumer/MessageEvent contracts, a #[MessageHandler] attribute, a build-time MessageHandlerProcessor that compiles consumers.php, and a PHP 5.3-safe Worker runner that dispatches to handler beans. Ships N
-
PHP
genai/openapi
Generates an OpenAPI 3 document at build time from your #[RestController] routes, request-body Forms/DTOs and validation constraints — baked into a reflection-free Cache\OpenApi — and ships a controller that serves /openapi.json and a Swagger UI page at /docs. PHP 5.3-safe at runtime.
-
PHP
genai/rate-limit
Fixed-window rate limiting. A RateLimiter over a pluggable store (file-backed by default), plus a RateLimitInterceptor that returns 429 when an IP exceeds the limit on a path (brute-force / flood protection). PHP 5.3-safe.
-
PHP
genai/session
Session component with pluggable storage: native files (default), a project file dir (cache/session), or a database (PDO). A small Session API over native PHP sessions; a SessionStore save-handler decides where the data lives. Driver chosen from the [session] config group. PHP 5.3-safe runtime.
-
PHP
genai/sql-mapper
MyBatis-style SQL mapper: mark an interface #[Mapper] and its methods #[Select]/#[Insert]/#[Update]/#[Delete] with the SQL. A build-time processor compiles a reflection-free Cache\<Name> implementation (prepared statements, #{name} bound params, optional row->object hydration) and registers it as a
-
PHP
genai/trace
Request correlation IDs for centralized logging. A TraceInterceptor reads X-Request-Id (or generates one), exposes it via a TraceContext bean + a global trace_id(), echoes it on the response, and a Monolog processor stamps it on every log line. PHP 5.3-safe at runtime.
-
PHP
genai/validation
Attribute-based validation compiled to a reflection-free validator. Put #[NotBlank]/#[Email]/#[Length]/#[Pattern]/#[Matches] on a #[Validate] form class; a build-time processor bakes the rules into Cache\Validation. At runtime, validate a populated form object -> a field=>error map, no reflection. P
-
PHP
genai/web
Web/MVC layer over genai/http: #[Controller]/#[RestController] (with a base path) and #[Route] attributes, a View value object, a default genai/view engine (override with #[ViewRegister]), and a dispatcher. Routes compile to genai/routing's standalone matcher. Runtime is PHP 5.3-safe; the attributes