Download the PHP package drmmr763/php-asyncapi-annotations without Composer
On this page you can find all versions of the php package drmmr763/php-asyncapi-annotations. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Table of contents
Download drmmr763/php-asyncapi-annotations
More information about drmmr763/php-asyncapi-annotations
Files in drmmr763/php-asyncapi-annotations
Download drmmr763/php-asyncapi-annotations
More information about drmmr763/php-asyncapi-annotations
Files in drmmr763/php-asyncapi-annotations
Vendor drmmr763
Package php-asyncapi-annotations
Short Description PHP annotations/attributes library for AsyncAPI 3.0.0 specification
License MIT
Package php-asyncapi-annotations
Short Description PHP annotations/attributes library for AsyncAPI 3.0.0 specification
License MIT
Please rate this library. Is it a good library?
Informations about the package php-asyncapi-annotations
PHP AsyncAPI Annotations
A comprehensive PHP library providing annotations/attributes for the AsyncAPI 3.0.0 specification. This library enables you to define AsyncAPI specifications using modern PHP 8.3+ attributes.
Features
- ✅ Complete AsyncAPI 3.0.0 Support - Full implementation of all AsyncAPI 3.0.0 objects and properties
- ✅ Modern PHP 8.3+ - Uses PHP 8.3+ attributes with strict typing
- ✅ Protocol Bindings - Support for all protocol-specific bindings (Kafka, MQTT, AMQP, HTTP, WebSockets, etc.)
- ✅ Security Schemes - Complete security scheme support (OAuth2, API Keys, HTTP Auth, etc.)
- ✅ Reusable Components - Full support for reusable components via the Components object
- ✅ Specification Extensions - Support for custom x-* fields
- ✅ PSR Compliant - Follows PSR-12 coding standards and PSR-4 autoloading
- ✅ Well Tested - Comprehensive PHPUnit test suite
- ✅ Portable - Designed to be integrated into Symfony bundles, Laravel packages, and other frameworks
Requirements
- PHP 8.3 or higher
Installation
Install via Composer:
Usage
Basic Example
Defining Servers
Defining Messages
Defining Channels and Operations
Using Security Schemes
Using Components for Reusability
Available Annotations
Core Objects
AsyncApi- Root document objectInfo- API metadataContact- Contact informationLicense- License informationServer- Server/broker definitionServerVariable- Server URL template variableServers- Collection of serversChannel- Communication channelChannels- Collection of channelsOperation- Send/receive operationOperations- Collection of operationsOperationTrait- Reusable operation propertiesOperationReply- Request/reply pattern responseOperationReplyAddress- Reply address specificationMessage- Message definitionMessages- Collection of messagesMessageTrait- Reusable message propertiesMessageExample- Message exampleParameter- Channel parameterParameters- Collection of parametersComponents- Reusable components
Schema Objects
Schema- JSON Schema Draft 07 supersetMultiFormatSchema- Multi-format schema support (Avro, etc.)
Supporting Objects
Tag- Metadata tagExternalDocumentation- External documentation referenceReference- Component reference ($ref)CorrelationId- Message correlation identifier
Bindings Objects
ServerBindings- Protocol-specific server configurationChannelBindings- Protocol-specific channel configurationOperationBindings- Protocol-specific operation configurationMessageBindings- Protocol-specific message configuration
Security Objects
SecurityScheme- Security scheme definitionOAuthFlows- OAuth flow configurationsOAuthFlow- Individual OAuth flow
Supported Protocols
The library supports bindings for all AsyncAPI protocols:
- HTTP
- WebSockets
- Kafka
- AMQP 0-9-1
- AMQP 1.0
- MQTT
- MQTT 5
- NATS
- JMS
- SNS
- SQS
- STOMP
- Redis
- Solace
- Mercure
- IBM MQ
- Google Pub/Sub
- Pulsar
- Anypoint MQ
Development
Running Tests
Code Quality
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This library is licensed under the MIT License. See the LICENSE file for details.
Credits
- Chad Windnagle
- Based on the AsyncAPI 3.0.0 Specification
Links
All versions of php-asyncapi-annotations with dependencies
PHP Build Version
Package Version
Requires
php Version
^8.3
The package drmmr763/php-asyncapi-annotations contains the following files
Loading the files please wait ...