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

Extended Laravel Laravel Package

open-southeners/extended-laravel

Adds handy Laravel extensions and helper utilities to streamline common tasks and reduce boilerplate. Designed as a lightweight add-on for projects needing extra convenience features beyond the core framework, with simple installation and integration.

View on GitHub
Deep Wiki
Context7

Getting Started

Minimal Setup

  1. Installation Add the package via Composer:

    composer require open-southeners/extended-laravel
    

    Publish the config (if available) with:

    php artisan vendor:publish --provider="OpenSoutheners\ExtendedLaravel\ExtendedLaravelServiceProvider"
    
  2. First Use Case Check the helpers.php file (likely located in vendor/open-southeners/extended-laravel/src/helpers.php) for utility functions. Example:

    use OpenSoutheners\ExtendedLaravel\Helpers;
    
    // Use a helper like `Helpers::slugify('My Test String')`
    $slug = Helpers::slugify('My Test String'); // Returns 'my-test-string'
    
  3. Service Provider & Facade Register the package in config/app.php under providers:

    OpenSoutheners\ExtendedLaravel\ExtendedLaravelServiceProvider::class,
    

    Use the facade (if provided) in your code:

    use OpenSoutheners\ExtendedLaravel\Facades\ExtendedLaravel;
    
    $result = ExtendedLaravel::someHelperMethod();
    

Implementation Patterns

Common Workflows

  1. String Manipulation Extend Laravel’s default string helpers with additional methods:

    // Example: Convert camelCase to snake_case
    $snakeCase = Helpers::camelToSnake('camelCaseString');
    
  2. Collection Enhancements Add custom collection methods (if the package includes them):

    $collection = collect([1, 2, 3]);
    $doubled = $collection->extendedDouble(); // Hypothetical method
    
  3. Request/Response Helpers Simplify request handling or response formatting:

    // Example: Auto-format JSON responses
    return ExtendedLaravel::formatResponse($data, 200);
    
  4. Model & Eloquent Extensions Attach scopes or accessors to Eloquent models:

    // Hypothetical: Add a 'published' scope
    $posts = Post::published()->get();
    
  5. Blade Directives Register custom Blade directives for reusable templates:

    // Example: Add a 'json' directive to dump JSON
    @json($variable)
    

Integration Tips

  • Service Container Binding Bind custom classes to the container for dependency injection:

    $this->app->bind('custom.helper', function () {
        return new CustomHelper();
    });
    
  • Middleware Extensions Use the package to simplify middleware logic:

    public function handle($request, Closure $next) {
        if (ExtendedLaravel::isAdmin($request)) {
            return $next($request);
        }
        return response('Unauthorized', 403);
    }
    
  • Event Listeners Leverage package helpers in event listeners for cleaner code:

    public function handle(UserRegistered $event) {
        $event->user->email_verified_at = now();
        ExtendedLaravel::sendWelcomeEmail($event->user);
    }
    

Gotchas and Tips

Pitfalls

  1. Namespace Conflicts Ensure helper functions don’t clash with existing Laravel or third-party helpers. Prefix custom methods if needed:

    Helpers::extendedSlugify() // Instead of just slugify()
    
  2. Configuration Overrides If the package publishes config, ensure your .env or config/extended-laravel.php doesn’t conflict with defaults.

  3. Facade vs. Helper Functions Avoid mixing facades and static helpers inconsistently. Stick to one style per project for maintainability.

  4. Performance Overhead Some helper functions (e.g., regex-based transformations) may add minor overhead. Benchmark critical paths.

  5. Undocumented Features Since the package is new (2026), some features may lack documentation. Check the README or source code for undocumented methods.

Debugging Tips

  • Log Helper Outputs Use Laravel’s logging to debug helper behavior:

    \Log::debug('Helper output:', ['result' => Helpers::someMethod($input)]);
    
  • Check for Deprecations If the package is actively maintained, monitor for breaking changes in minor updates.

  • Override Defaults Extend or override package behavior via service provider bindings:

    $this->app->singleton('helpers', function () {
        return new CustomHelpers();
    });
    

Extension Points

  1. Custom Helpers Add your own helpers by extending the package’s base class or creating a wrapper:

    class AppHelpers extends \OpenSoutheners\ExtendedLaravel\Helpers {
        public static function customMethod() { ... }
    }
    
  2. Macroable Extensions If the package supports macros (e.g., for collections), extend them:

    \Illuminate\Support\Collection::macro('customMethod', function () {
        return $this->map(...);
    });
    
  3. Package Configuration Modify published config to disable/enable features:

    'features' => [
        'string_helpers' => true,
        'collection_macros' => false,
    ],
    
  4. Testing Write unit tests for custom helpers to ensure reliability:

    public function testSlugify() {
        $this->assertEquals('test-string', Helpers::slugify('Test String'));
    }
    
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.
codifyo/ts-generator-bundle
andydefer/laravel-cluster
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
christhompsontldr/laravel-inky
spatie/mailcoach-vapor