rapporteermeer / blade-saas-kit
The unofficial Laravel starter kit for Blade.
Installs: 3
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Language:Blade
Type:project
Requires
- php: ^8.2
- codeat3/blade-phosphor-icons: ^2.3
- laravel/cashier: ^15.6
- laravel/framework: ^12.0
- laravel/tinker: ^2.10.1
- spatie/laravel-honeypot: ^4.5
Requires (Dev)
- barryvdh/laravel-debugbar: ^3.15
- fakerphp/faker: ^1.23
- laravel-lang/lang: ^15.19
- laravel/pail: ^1.2.2
- laravel/pint: ^1.18
- laravel/sail: ^1.41
- mockery/mockery: ^1.6
- nunomaduro/collision: ^8.6
- phpunit/phpunit: ^11.5.3
This package is auto-updated.
Last update: 2025-04-22 23:03:42 UTC
README
Mijn eigen Saas starter kit met Blade & Alphine.js. (GEEN LIVEWIRE)
Command op deze starter kit te gebruiken
laravel new naamvandeapplicatie --using=rapporteermeer/blade-saas-kit
composer run dev
php artisan optimize
Team Types aanpassen
De applicatie komt met voorgedefinieerde team types (Home Care, Housing Assistance, Outpatient Guidance). Om deze aan te passen:
-
Bewerk het Seeder bestand:
- Open
database/seeders/RolesAndTeamTypesSeeder.php
- Pas de
$teamTypes
array aan met jouw gewenste team types:
$teamTypes = [ ['name' => 'Jouw Team Type 1', 'description' => 'Beschrijving voor team type 1'], ['name' => 'Jouw Team Type 2', 'description' => 'Beschrijving voor team type 2'], // Voeg meer toe indien nodig ];
- Open
-
Update Area Routes:
- Open
routes/areas.php
- Pas de route groepen aan zodat ze overeenkomen met je nieuwe team types:
Route::middleware(['auth', 'verified', EnsureUserHasSubscription::class, EnsureTeamTypeMatches::class . ':Jouw Team Type 1'])->group(function () { Route::get('jouw-route/dashboard', [JouwController::class, 'index'])->name('areas.jouw-route.index'); // Voeg andere specifieke routes hier toe });
- Open
-
Maak Controllers voor nieuwe gebieden:
- Maak een controller voor elk team type in
app/Http/Controllers/Area/
- Volg het patroon van bestaande controllers zoals
HomeCareController.php
- Maak een controller voor elk team type in
-
Update Dashboard Doorverwijzing:
- Open
app/Http/Controllers/DashboardController.php
- Pas de
redirect()
methode's switch statement aan om je nieuwe team types op te nemen:
switch ($team->teamType->name) { case 'Jouw Team Type 1': return redirect()->route('areas.jouw-route.index'); // Voeg cases toe voor andere team types default: return redirect()->route('teams.index'); }
- Open
-
Update Sidebar Navigatie:
- Open
resources/views/components/layouts/app/sidebar.blade.php
- Pas de conditionele navigatie-items aan zodat ze overeenkomen met jouw team types
- Open
-
Voer Database Migraties en Seeders uit:
php artisan migrate:fresh --seed
Gebruikersrollen aanpassen
De applicatie komt met voorgedefinieerde rollen (SuperAdmin, Owner, Employer, Employee). Om deze aan te passen:
-
Bewerk het Seeder bestand:
- Open
database/seeders/RolesAndTeamTypesSeeder.php
- Pas de
$roles
array aan met jouw gewenste rollen:
$roles = [ ['name' => 'SuperAdmin', 'description' => 'Heeft toegang tot alles'], ['name' => 'Owner', 'description' => 'Eigenaar van een team'], // Wijzig of voeg meer rollen toe indien nodig ];
- Open
-
Update Rol-gebaseerde Logica:
- Controleer en update het
TeamPolicy.php
bestand om ervoor te zorgen dat permissies overeenkomen met je nieuwe rollen - Update de
invite()
,updateMembers()
, enremoveMembers()
methodes om je rolstructuur weer te geven
- Controleer en update het
-
Update Controllers:
- In
InvitationController.php
enTeamMemberController.php
, update de rolfiltering in methodes zoalscreate()
om je nieuwe rollen op te nemen:
$roles = Role::whereIn('name', ['Jouw Rol 1', 'Jouw Rol 2'])->get();
- In
-
Update Views:
- Controleer uitnodigings- en ledenbewerkingsformulieren + RegistrationController om ervoor te zorgen dat ze de juiste rollen weergeven
-
Voer Database Migraties en Seeders uit:
php artisan migrate:fresh --seed
Abonnementsplannen aanpassen
De applicatie gebruikt Stripe voor abonnementsbeheer. Om abonnementsplannen aan te passen:
-
Maak Plannen aan in Stripe Dashboard:
- Log in op je Stripe Dashboard
- Maak nieuwe producten en prijsplannen aan zoals nodig
- Noteer de prijs-ID's voor elk plan
-
Update Environment Variabelen:
- Open je
.env
bestand - Update of voeg de volgende variabelen toe met je Stripe prijs-ID's:
STRIPE_PRICE_MONTHLY_ID=price_xxxxx STRIPE_PRICE_THREE_MONTHLY_ID=price_xxxxx STRIPE_PRICE_YEARLY_ID=price_xxxxx
- Je kunt meer prijs-ID's toevoegen indien nodig voor je abonnementsstructuur
- Open je
-
Update Billing View:
- Open
resources/views/billing/index.blade.php
- Pas de abonnementskaarten aan zodat ze overeenkomen met je prijsstructuur
- Update de prijsweergave en plannamen
- Open
-
Update BillingController:
- Als je nieuwe abonnementstypes hebt toegevoegd of de standaard hebt gewijzigd, update dan de
checkout()
methode inapp/Http/Controllers/BillingController.php
- Als je nieuwe abonnementstypes hebt toegevoegd of de standaard hebt gewijzigd, update dan de
-
Wijzig Proefperiode (Optioneel):
- Om de duur van de proefperiode te wijzigen, update de
store()
methode inapp/Http/Controllers/TeamController.php
:
$user->trial_ends_at = now()->addDays(JOUW_PROEF_DAGEN);
- Update dit ook in
app/Http/Controllers/Auth/RegistrationController.php
- Om de duur van de proefperiode te wijzigen, update de
-
Update Abonnementscontrole Logica (Optioneel):
- Als je hebt gewijzigd hoe abonnementen werken, moet je mogelijk de
hasValidSubscriptionOrTrial()
methode in hetUser
model updaten
- Als je hebt gewijzigd hoe abonnementen werken, moet je mogelijk de
Aanvullende opmerkingen
- Na het maken van wijzigingen in seeders, moet je
php artisan migrate:fresh --seed
uitvoeren, wat je database zal resetten - Voor productieomgevingen, overweeg het maken van een aangepaste seeder die bestaande gegevens niet wist
- Test abonnementsstromen altijd in Stripe testmodus voordat je live gaat
- Vergeet niet om gerelateerde documentatie of gebruikershandleidingen bij te werken om je wijzigingen weer te geven