Search by

kajalpandya / generate_laravel_crud

kajal98

Laravel 13 admin panel you publish into your app and own: users, blog, FAQs, testimonials, pages, inquiries and site settings.

Package info

github.com/kajal98/generate_crud

Language:Blade

pkg:composer/kajalpandya/generate_laravel_crud

Statistics

Installs: 1 476

Dependents: 0

Suggesters: 0

Stars: 14

Open Issues: 1

v3.0.1 2026-10-24 06:53 UTC

README

Latest Version Total Downloads PHP License

A ready-made admin panel for Laravel 13. One command copies the controllers, models, views, migrations and seeders into your app, so the code is yours to read and change. There's no runtime layer to work around.

You get: admin login, users, blog with categories and slugs, FAQs, testimonials, extra pages, feedback, inquiries, site settings, and profile and password management.

composer require kajalpandya/generate_laravel_crud
php artisan vendor:publish --tag=crud
echo "require __DIR__.'/crud.php';" >> routes/web.php
php artisan migrate && php artisan db:seed --class=CrudSeeder

Open /admin/login and sign in with admin@gmail.com / admin2018.

Dashboard

Requires: PHP 8.3+ and Laravel 13.

Install

Start from a fresh Laravel 13 app with your database configured in .env:

composer require kajalpandya/generate_laravel_crud

The service provider and the admin middleware are registered automatically.

Publish the panel

php artisan vendor:publish --tag=crud

This copies:

Tag What Where
crud-app controllers, models, routes app/Http/Controllers, app/Models, routes/crud.php
crud-views Blade views resources/views
crud-database migrations, seeders database/migrations, database/seeders
crud-assets CSS, JS, fonts, images public

Existing files are never overwritten. Your app already has app/Models/User.php, so either publish with --force or add the panel's extra fields (last_name, role, active, phone, mobile, address, city, state, country, pincode) to your User model's $fillable.

Wire up the routes

Add this line to the end of routes/web.php:

require __DIR__.'/crud.php';

Migrate and seed

The panel's migrations add columns to Laravel's default users table, so keep the default migrations.

php artisan migrate
php artisan db:seed --class=CrudSeeder

Then visit /admin/login and sign in with admin@gmail.com / admin2018. Change this password straight away.

Create a public/tmp folder if you use image uploads.

Optional settings

.env key Used for
MSG91_AUTH_KEY, MSG91_SENDER SMS on user activation (send_message())
AWS_STATUS, AWS_S3_BUCKET, AWS_S3_HOST Store uploads on S3 (needs aws/aws-sdk-php-laravel)

Generate views for an entity

php artisan generate:crud Product --views

Upgrading from v2 (Laravel 10)

  • Models now live in App\Models (was App\).
  • Seeders live in database/seeders under Database\Seeders. DatabaseSeeder is now CrudSeeder.
  • The users migration now alters the default users table instead of replacing it. The password_resets migration is gone, because Laravel 13 ships password_reset_tokens.
  • The admin middleware comes from the package. Remove App\Http\Middleware\AdminOnly if you published it before.
  • helpers.php is autoloaded by the package. Remove the app/helpers.php entry from your composer.json.
  • laravelcollective/html and spatie/laravel-newsletter are no longer installed.

Screenshots

Register register
Login login
Dashboard 1
User Listing 2
Change Profile 3
Change Password 4
Site Settings 5
Blog Listing 6
Add new blog 7
Edit Blog 8
Show Blog 9
Inquiries Listing 10
Extra Pages 11
Edit Extra Pages 12
FAQs 13
Testimonials 14
Forgot Password 15
Reset Password 16