1. Go to this page and download the library: Download happones/kinetix library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
happones / kinetix example snippets
return [
'brand' => [
'name' => env('APP_NAME', 'Kinetix'),
'logo' => env('KINETIX_BRAND_LOGO', null),
'favicon' => env('KINETIX_BRAND_FAVICON', null),
],
'assets' => [
'path' => env('KINETIX_ASSETS_PATH', 'vendor/kinetix'),
'cache' => env('KINETIX_ASSETS_CACHE', true),
],
'notifications' => [
// Set to true to persist notifications in the database
'database' => env('KINETIX_DATABASE_NOTIFICATIONS', false),
// Max unread notifications loaded per request (database mode)
'limit' => env('KINETIX_NOTIFICATIONS_LIMIT', 15),
'sound' => [
'enabled' => env('KINETIX_NOTIFICATIONS_SOUND', true),
'path' => env('KINETIX_NOTIFICATIONS_SOUND_PATH', '/vendor/kinetix/notification.wav'),
],
],
// Uncomment to enable real-time WebSocket notifications via Laravel Echo
'broadcasting' => [
// 'echo' => [
// 'broadcaster' => 'reverb',
// 'key' => env('VITE_REVERB_APP_KEY'),
// 'wsHost' => env('VITE_REVERB_HOST', '127.0.0.1'),
// 'wsPort' => env('VITE_REVERB_PORT', 8080),
// 'wssPort' => env('VITE_REVERB_PORT', 443),
// 'forceTLS' => env('VITE_REVERB_SCHEME', 'https') === 'https',
// 'enabledTransports' => ['ws', 'wss'],
// ],
],
// Internal API route prefix — change if it conflicts with your routes
'route_prefix' => env('KINETIX_ROUTE_PREFIX', '_kinetix'),
// Middleware applied to all internal Kinetix routes
'middleware' => ['web', 'auth'],
];
use Happones\Kinetix\Notifications\Notification;
Notification::make()
->title('Profile updated')
->description('Your changes have been saved successfully.')
->success()
->send();
// Custom duration in milliseconds
Notification::make()->title('Quick!')->duration(2000)->send();
// Helper: set duration in seconds
Notification::make()->title('5 second notice')->seconds(5)->send();
// Never auto-close
Notification::make()->title('Important')->persistent()->send();
// Option A: Set recipient fluently (Recommended)
Notification::make()
->to($user)
->title('New assignment')
->description('Ticket #4562 has been assigned to you.')
->info()
->send(); // Automatically routes to database if configured
// Option B: Pass recipient directly
Notification::make()
->title('New assignment')
->description('Ticket #4562 has been assigned to you.')
->info()
->sendToDatabase($user);
use Laravel\Cashier\Billable;
use Happones\Kinetix\Billing\Concerns\HasPlan;
class User extends Authenticatable
{
use Billable, HasPlan;
}
// Feature gating from anywhere
$user->canUseFeature('capabilities.api');
Route::post('/export', ...)->middleware('plan.feature:capabilities.api');
bash
# Config file → config/kinetix.php
php artisan vendor:publish --tag=kinetix-config
# Vue components, stores, and types → resources/js/
php artisan vendor:publish --tag=kinetix-components
# Translations → lang/{en,es,fr,pt}/kinetix.php
php artisan vendor:publish --tag=kinetix-translations
# Audio assets → public/vendor/kinetix/
php artisan vendor:publish --tag=kinetix-assets
# Fallback design tokens — only if your app is NOT a shadcn-vue starter kit
php artisan vendor:publish --tag=kinetix-styles
# Per-module agent skills → .claude/skills/kinetix-* (kinetix:install does this
# for you; coding agents only read the project, never vendor/)
php artisan vendor:publish --tag=kinetix-skills
bash
php artisan vue-i18n:generate
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.