dev-extensions / kernel
dev-extensions kernel
Installs: 20
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Language:Shell
pkg:composer/dev-extensions/kernel
Requires
This package is auto-updated.
Last update: 2025-11-12 10:49:08 UTC
README
Branches
- 📦 lte.6x-is_dev: sử dụng cho các phiên bản CMS <=6.x và namespace hệ thống dưới dạng
Dev\\ - 📦 lte.6x-is_platform: sử dụng cho các phiên bản CMS <=6.x và namespace hệ thống dưới dạng
Platform\\ - 📦 v7x: sử dụng cho các phiên bản CMS >=7.x và namespace hệ thống lúc này luôn luôn dưới dạng
Dev\\
A comprehensive kernel extension for Laravel CMS that provides core system functionality, package initialization, and kernel customizations.
Features
- 🚀 Bootstrap core system components
- 📦 Initialize core packages automatically
- 🔧 Kernel and middleware customizations
- 📊 Google Spreadsheet integration
- 🎂 Member birthday notification system
- 🔍 Advanced query macros
- 📈 Benchmarking utilities
- 🎨 Form field helpers
Requirements
- PHP 7.4 or higher
- Laravel Framework (8.x or higher recommended)
Installation
You can install the package via composer:
composer require dev-extension/kernel
Binary Scripts Installation
The package automatically installs all binary scripts from vendor/dev-extensions/kernel/bin/ to your project's ROOT/bin/ directory during:
composer installcomposer update
All scripts are symlinked (not copied), so updates to the package will automatically reflect in your project.
Installed scripts include:
- 🐳 Docker setup & infrastructure scripts
- 🚀 Deployment & CI/CD tools (GitLab integration)
- 🖼️ Image & PDF optimization utilities
- 📱 Barcode & QR code decoders
- 🔍 Security scanning & maintenance tools
- 🌐 WordPress auto-installer
- 🔧 Various development utilities
You can run them directly from your project root:
./bin/docker-setup-laravel.sh ./bin/optimize-image.sh image.jpg ./bin/scan-malware.sh
📚 Documentation:
- BINARIES.md - Complete list of all available scripts
- BINARIES_SETUP.md - Installation & troubleshooting guide
- FORCE_MODE_EXPLAINED.md - How automatic cleanup works
⚠️ Important: The installer uses FORCE MODE - existing files/symlinks will be automatically removed and replaced. Learn more
Configuration
After installation, publish the configuration files:
php artisan vendor:publish --tag=cms-config
This will publish configuration files to config/kernel/ directory.
Usage
Commands
Member Birthday Notifications
Send birthday reminders to members:
php artisan cms:member:birthday-notification
Git Commit Hook Setup
Install Git commit message hook:
php artisan git:install-commit-hook
Seeders
Override Default Settings
Seed default settings for the application:
php artisan db:seed --class=\\Platform\\Kernel\\Seeders\\SettingSeeder
Helper Functions
The package provides various helper functions:
Google Spreadsheet Integration
apps_google_sheet($data, $spreadsheet, $credentialsType, $credentialsFile);
JSON Database Operations
apps_json_to_database($original, $value, $key, $override);
Province Detection
apps_province_detection('Thanh Hoá'); // Returns "Thanh Hoá"
Phone Extraction
apps_phone_extraction($text); // Extracts phone numbers from text
Traits
LoadAndPublishDataTrait
Provides methods for loading and publishing package resources:
$this->setNamespace('kernel') ->loadMigrations() ->loadAndPublishConfigurations(['general', 'email']) ->loadAndPublishTranslations() ->loadHelpers() ->loadRoutes(['web', 'api']);
Benchmarkable
Add benchmarking capabilities to your classes:
use Platform\Kernel\Traits\Benchmarkable; class YourClass { use Benchmarkable; public function someMethod() { $result = $this->benchmark('operation-name', function() { // Your code here return $someResult; }); } }
Models
District
Manage district data with relationships to cities:
use Platform\Kernel\Models\District; $district = District::where('city_id', 1)->get();
Ward
Manage ward data with relationships to districts:
use Platform\Kernel\Models\Ward; $ward = Ward::where('district_id', 1)->get();
Events & Listeners
Member Birthday Event
The package includes a birthday reminder system:
- Event:
Platform\Kernel\Events\MemberBirthdayEvent - Listener:
Platform\Kernel\Listeners\MemberBirthdayListener - Notification:
Platform\Kernel\Notifications\MemberBirthdayNotification
API Routes
The package registers the following API routes:
GET|POST /api/v1/products/check-update- System update checkGET /api/v1/license/verify- License verificationGET /api/v1/license/check- License checkDELETE /api/v1/delete-account- Delete user account (requires authentication)
Test routes available at /api/v1/test/*
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Security
If you discover any security related issues, please email toan@visualweber.com instead of using the issue tracker.
Credits
- Visual Weber Vietnam
- All Contributors
License
The MIT License (MIT). Please see License File for more information.