Skip to content

AbiruzzamanMolla/blade-try-catch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Blade Try-Catch Directives for Laravel

Latest Version on Packagist License


Overview

This Laravel package adds native-like @try, @catch, @finally, and @endtry directives to Blade templates, allowing you to handle exceptions gracefully inside your views.

You no longer need to clutter your controllers for simple error handling in views — this package provides a clean, elegant syntax for try-catch-finally in Blade.

Compatible with Laravel 5.8 through 12 and PHP 7.1+.


Installation

You can install the package via Composer:

composer require azmolla/blade-try-catch

The package auto-registers the service provider via Laravel's package discovery. No manual provider registration needed.


Usage

Use the directives in any Blade view:

@try
    {{-- Code that may throw an exception --}}
    {{ riskyFunction() }}
@catch(\Exception $e)
    {{-- Handle the exception --}}
    <div class="error">Error: {{ $e->getMessage() }}</div>
@finally
    {{-- Code that always runs --}}
    <p>Cleanup completed.</p>
@endtry

Testing

This package uses Pest for testing.

To run tests locally:

composer test

Make sure to install development dependencies before running tests:

composer install --dev

Contributing

Contributions, issues, and feature requests are welcome!

  1. Fork the repo
  2. Create your feature branch (git checkout -b feature/my-feature)
  3. Commit your changes (git commit -m 'Add new feature')
  4. Push to the branch (git push origin feature/my-feature)
  5. Open a pull request

Please ensure your code passes existing tests and write new tests if applicable.


Links & Credits


License

MIT © 2025 Abiruzzaman Molla

About

Blade directives for try-catch-finally blocks in Laravel Blade templates

Topics

Resources

Stars

Watchers

Forks

Languages