treblle / error-codes
A package to help you provide consistent error codes.
Requires
- php: ^8.2
Requires (Dev)
- laravel/pint: ^1.11
- orchestra/testbench: ^8.9.1
- pestphp/pest: ^2.16
- phpstan/phpstan: ^1.10.32
- roave/security-advisories: dev-latest
README
API Error Codes
Integrations
•
Website
•
Docs
•
Blog
•
Twitter
•
Discord
A package to help you provide consistent error codes.
Installation
composer require treblle/error-codes
Usage
This package is easy to use, you can determine what Error Code you need. Then access the attributes attached to it.
use Treblle\ErrorCodes\Enums\ErrorCode; $badRequest = ErrorCode::BAD_REQUEST; $title = $badRequest->getDescription()->title; // Bad Request $code = $badRequest->getDescription()->code; // HTTP_400 $link = $badRequest->getDescription()->link; // https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400 $status = $badRequest->getDescription()->status; // 400
Combining
This package works very well with the treblle/api-responses
package.
final class Handler extends ExceptionHandler { public function register(): void { $this->renderable(function (ModelNotFoundException $exception, Request $request) { $errorCode = \Treblle\ErrorCodes\Enums\ErrorCode::NOT_FOUND; return new ErrorResponse( data: new ApiError( title: $errorCode->getDescription()->title, detail: $exception->getMessage(), instance: $request->path(), code: $errorCode->getDescription()->code, link: $errorCode->getDescription()->link, ), status: Status::NOT_FOUND, ); }); } }
Community 💙
First and foremost: Star and watch this repository to stay up-to-date.
Also, follow our Blog, and on Twitter.
You can chat with the team and other members on Discord and follow our tutorials and other video material at YouTube.
How to contribute
Here are some ways of contributing to making Treblle better:
- Try out Treblle, and let us know ways to make Treblle better for you. Let us know here on Discord.
- Join our Discord and connect with other members to share and learn from.
- Send a pull request to any of our open source repositories on Github. Check the contribution guide on the repo you want to contribute to for more details about how to contribute. We're looking forward to your contribution!
Testing
To run the test suite:
composer run test
Credits
LICENSE
The MIT LIcense (MIT). Please see License File for more information.