Every package, by area
Plerino is a monorepo of Composer packages under the plerino vendor name. Each package has its own tests, changelog and documentation page. No stable release has been published yet.
- packages in the repository
- 30
- planned packages
- 5
- areas
- 10
Foundation
Contracts, the kernel and the building blocks every package shares
-
plerino/contractsIn the repositoryInterfaces, enums and value-object contracts that define the public API surface, with PSR re-exports.
-
plerino/kernelIn the repositoryBoot, the build pipeline, discovery, request scopes, the middleware pipeline and the error boundary.
-
plerino/containerIn the repositoryA compiled service container with singleton, scoped and transient lifetimes declared by attributes.
-
plerino/configIn the repositoryTyped configuration classes compiled at build time from environment variables, with secrets kept out of the compiled file.
-
plerino/cryptoIn the repositorylibsodium wrappers: authenticated encryption, a key ring with rotation, hashing, signing and the Secret value type.
-
plerino/clockIn the repositoryA PSR-20 clock, a frozen clock for tests and a Duration type.
-
plerino/collectionIn the repositoryTyped immutable collections, maps and lazy sequences.
-
plerino/moneyIn the repositoryExact monetary amounts with ISO 4217 currencies, allocation and formatting.
-
plerino/frameworkIn the repositoryThe meta-package that requires the core packages.
HTTP and runtime
Messages, routing, runtime drivers and an outbound client
-
plerino/httpIn the repositoryA PSR-7, PSR-15 and PSR-17 implementation with typed input classes, a response factory, Problem Details and security headers.
-
plerino/routingIn the repositoryRoute attributes, typed parameters, a compiled matcher and URL generation.
-
plerino/kineticIn the repositoryThe runtime: FrankenPHP worker and PHP-FPM drivers, worker recycling and health endpoints. Swoole and RoadRunner drivers are planned.
-
plerino/http-clientIn the repositoryA PSR-18 client with a server-side request forgery guard, redirect control, retries, a pool and fakes.
Templates and front end
Compiled templates and front-end integration
-
plerino/weftIn the repositoryAn HTML-native template compiler with components, slots and escaping by default. It also renders mail markup and PDF documents.
-
plerino/bridgePlannedAn adapter for client-side front ends with server-side rendering.
Data
SQL, documents, vectors, caching and file storage
-
plerino/tesseraIn the repositoryEntities, repositories, an immutable query builder and migrations for PostgreSQL, MySQL and SQLite, a MongoDB document store and vector search.
-
plerino/cacheIn the repositoryPSR-6 and PSR-16 caches with file, memory, Redis and Memcached stores, tags, locks and stampede protection.
-
plerino/filesystemIn the repositoryLocal and S3-compatible storage with validated paths, streams, upload inspection and presigned URLs.
-
plerino/seekerPlannedSearch drivers and a vector search bridge.
Background work
Queues, workflows, schedules and events
-
plerino/fluxIn the repositoryQueue drivers for Redis Streams, PostgreSQL and SQS, jobs, batches, durable workflows and a dashboard.
-
plerino/schedulerIn the repositoryScheduled classes compiled at build time, cron expressions, time zones and locks across nodes.
-
plerino/eventsIn the repositoryTyped events with listeners compiled at build time, asynchronous delivery and a transactional outbox.
Realtime
A realtime server and its protocol
-
plerino/cometIn the repositoryA realtime server over WebSocket and server-sent events with channels, policies, presence, replay and end-to-end encrypted channels.
Security
Authentication, authorization and protection
-
plerino/aegisIn the repositorySessions, guards, passkeys, TOTP, recovery codes, magic links, OAuth sign-in, API tokens and policies for RBAC, ABAC and ReBAC.
-
plerino/bastionPlannedRuntime application protection.
-
plerino/wardenPlannedData classification, an audit chain and GDPR tooling.
Communication
Mail and multi-channel notifications
-
plerino/mailIn the repositoryMessages, MIME building, SMTP, SES, Postmark and Resend transports, DKIM, queued delivery and preview.
-
plerino/notificationsIn the repositoryNotifications over mail, SMS, Telegram, Web Push, Slack and a database inbox, with preferences and queue hand-off.
Application support
Validation, localisation, logging and the command line
-
plerino/validationIn the repositoryAttribute rules, a validator and translated messages.
-
plerino/i18nIn the repositoryICU MessageFormat, locale negotiation, formatters and the core translations.
-
plerino/logIn the repositoryA PSR-3 JSON lines logger with secret redaction and size-based rotation.
-
plerino/consoleIn the repositoryCommand attributes, input and output, prompts and tables.
-
plerino/cliIn the repositoryThe plerino binary: build, serve, routes, container, doctor, secrets, key rotation and generators.
-
plerino/facetPlannedFeature flags.
Observability
Telemetry and development tooling
-
plerino/lensIn the repositoryOpenTelemetry traces, metrics and logs over OTLP, development panels, a toolbar and a detailed error page.
Client libraries
Published outside Composer.
@plerino/cometIn the repositoryThe typed TypeScript client for Comet: reconnection, resume, offline publishing, presence and end-to-end encryption.
Weft for Visual Studio CodeIn the repositorySyntax highlighting for Weft templates.
Built on standards
Plerino implements open interfaces and specifications instead of private conventions.
- PSR-3
- PSR-6
- PSR-7
- PSR-15
- PSR-16
- PSR-17
- PSR-18
- PSR-20
- ICU MessageFormat
- RFC 9457 Problem Details
- OpenTelemetry
- WebAuthn
- libsodium
Follow the road to 1.0
Explore what exists today, or write to us if you want to talk about the project.