Installation Add the package via Composer:
composer require coresys/corelibrary
Publish the config (if available):
php artisan vendor:publish --provider="CoreSys\Corelibrary\CorelibraryServiceProvider"
First Use Case
CoreSys\Corelibrary\Support\Helpers namespace for static utility methods (e.g., string manipulation, array helpers).CoreSys\Corelibrary\Services\*) via app() or resolve().CoreSys), test basic functionality:
use CoreSys\Facades\CoreSys;
CoreSys::someMethod(); // Replace with actual method
Documentation
README.md in the repo (if present).phpdoc for CoreSys\Corelibrary\*).Utility Helpers
use CoreSys\Corelibrary\Support\Helpers\StringHelper;
$snakeCase = StringHelper::toSnakeCase('CamelCaseString');
Helpers\ for clarity.Service Integration
AppServiceProvider:
$this->app->bind('customLogger', function () {
return new \CoreSys\Corelibrary\Services\LoggerService();
});
Event Listeners/Observers
CoreSys\Events\*), listen in EventServiceProvider:
protected $listen = [
'CoreSys\Events\DataProcessed' => [
'App\Listeners\HandleDataProcessed',
],
];
Middleware
namespace App\Http\Middleware;
use CoreSys\Corelibrary\Http\Middleware\AuthenticateAsCoreSys;
class CustomAuth extends AuthenticateAsCoreSys {
public function handle($request, Closure $next) {
// Pre/post-processing
return parent::handle($request, $next);
}
}
Configuration
config/corelibrary.php:
'default_locale' => 'en_US',
'api_timeout' => 30,
// webpack.mix.js
mix.js('resources/js/corelibrary.js', 'public/js')
.styles('resources/css/corelibrary.css', 'public/css');
$this->app->instance('CoreSys\Corelibrary\Services\SomeService', Mockery::mock());
Undocumented Features
php artisan tinker to explore:
php artisan tinker
>>> \CoreSys\Corelibrary\Support\Helpers::classMethods()
Namespace Conflicts
CoreSys namespace, which could clash with other vendors.composer.json:
"autoload": {
"psr-4": {
"App\\": "app/",
"CoreSys\\": "vendor/coresys/corelibrary/src/"
}
}
Configuration Overrides
array_merge in config/corelibrary.php:
return array_merge(
require __DIR__.'/corelibrary.php',
$this->getCustomConfig()
);
Service Provider Loading
CorelibraryServiceProvider loads after AppServiceProvider in config/app.php.Deprecated Methods
Route::bind()).composer.json for Laravel version constraints and update accordingly.\Log::debug('Corelibrary debug', ['data' => $variable]);
vendor/coresys/corelibrary/src/.try {
CoreSys::riskyOperation();
} catch (\CoreSys\Corelibrary\Exceptions\CorelibraryException $e) {
\Log::error($e->getMessage());
}
Custom Helpers
namespace App\Support;
use CoreSys\Corelibrary\Support\Helpers\StringHelper;
trait ExtendedStringHelper {
public static function customMethod($input) {
return StringHelper::toSnakeCase($input) . '_extended';
}
}
Service Decorators
class DecoratedLogger implements \Psr\Log\LoggerInterface {
protected $logger;
public function __construct(\CoreSys\Corelibrary\Services\LoggerService $logger) {
$this->logger = $logger;
}
public function log($level, $message) {
// Add custom logic
$this->logger->log($level, $message);
}
}
Event Subscribers
EventServiceProvider:
protected $subscribe = [
\CoreSys\Corelibrary\Events\DataProcessed::class => [
\App\Listeners\CustomDataListener::class,
],
];
Blade Directives
Blade::directive('corelibrary', function ($expression) {
return "<?php echo CoreSys::render{$expression}(); ?>";
});
How can I help you explore Laravel packages today?