Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Corner Laravel Package

paragonie/corner

Corner provides extended PHP exceptions/errors with richer context: helpful long-form messages, source code snippets around the failure, and support links. Inspired by Rust-style diagnostics, useful even outside UI error pages.

View on GitHub
Deep Wiki
Context7

Corner

Linux Build Status Latest Stable Version Latest Unstable Version License Downloads

PHP Exceptions and Errors designed to prevent your users from sharp corners. Inspired by Rust's helpful error messages.

  • Version 2.x: Requires PHP 7.1 or newer.
  • Version 1.x: Requires PHP 5.4 or newer.

Motivation

There are already libraries like Whoops which focus on taking existing uncaught Exceptions and giving them a user interface.

Rather than take control of your entire UI output, Corner extends the base Throwable interface and Exception/Error classes and makes them more useful even in non-UI contexts.

Corner's Extended Exception API

getHelpfulMessage()

What exactly is going on here?

Imagine an email. Throwable::getMessage() can be likened to the subject line. In traditional exceptions, the closest thing you have to a message body is getTraceAsString().

In Corner, the "helpful message" is meant to be a full-text explanation of the problem. ASCII art diagrams (hard-coded or generated from the source code, if applicable) are permitted.

getSnippet($before = 0, $after = 0, $traceWalk = 0)

What was the code surrounding the exception doing?

By default, this returns the line of PHP code that triggered the exception.

You can optionally pass a number of leading and trailing lines to this method to read more text from the source code file. The third argument allows you to excerpt snippets of code from within the stack trace.

The main use case for getSnippet() is to generate helpful error messages for getHelpfulMessage().

getSupportLink()

Where can I find help?

The intent of this method is to give the developer using your project the quickest possible path to troubleshooting and solving the problem that they're most likely facing if this Exception / Error gets thrown.

If possible, link to a specific section of your project's documentation (including page anchors, if applicable) to get the developer closer to the solution to whatever problem they're encountering.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
besmartand-pro/php-quality-config
sentix/ai-chatbot
terminal42/code-quality-tools
codifyo/ts-generator-bundle
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity