Laravel TomatoPHP Admin & CRUD generator

Fady Mondy - Feb 3 '23 - - Dev Community

Hi, community.
Have you tried to build an SPA app? As a full stack developer I think it's straightforward to do that by using some frontend tech as a backend do you try it?

now it's easy to do that by using Splade it's a new package that supports building SPA apps with just Blade and It will make a lot of changes to the Laravel community.

because of this new tech we are on the TomatoPHP team going to build something unique with FilamentPHP UI and Splade Tech to check out a new Dashboard & CRUD generator to make your development faster and cleaner.

Demo

now you can check our demo here

Features

  • SPA App With Blade
  • CURD Generator Web / API
  • Support HMVC Architecture
  • Authentication & User Manager
  • Responsive UI Using Filament Template
  • RTL/Dark Mode Support
  • Ready to Use Breeze Tool Kit Support RTL/Dark Mode
  • Ready to Use Arabic / English Translations
  • Easy To use Menu With Provider

Install

you can start checking this admin panel by this command on a fresh Laravel project.

composer require tomatophp/tomato-admin
Enter fullscreen mode Exit fullscreen mode

after installing it use this command to easily publish assets and make your dashboard ready

php artisan tomato-admin:install
Enter fullscreen mode Exit fullscreen mode

now build your assets

yarn & yarn build
Enter fullscreen mode Exit fullscreen mode

now your admin panel is ready to use.

Start Your First CRUD

you can build a CRUD after you make a migration for your table, let's say you need to build a customer's table through this migration.

you can create a new migration

php artisan make:migration create_customers_table
Enter fullscreen mode Exit fullscreen mode

and after that, you can build your customer table schema.


<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateCustomersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('customers', function (Blueprint $table) {
            $table->id();
            $table->string('name')->index();
            $table->longText('bio')->nullable();
            $table->string('email')->unique()->index();
            $table->string('phone');
            $table->text('address')->nullable();
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('customers');
    }
}
Enter fullscreen mode Exit fullscreen mode

run migration to create the table

php artisan migrate
Enter fullscreen mode Exit fullscreen mode

and here is the tomato step just use this command

php artisan tomato:generate
Enter fullscreen mode Exit fullscreen mode

it will ask you about the table name you generate a migration for, and if you like to use Laravel Modules, you can just say y on the next ask.

now register the menu to your config config/tomato-admin and you can find the menu class on App\Menus and clear your config

php aritsan config:cache
Enter fullscreen mode Exit fullscreen mode

BOM.. your CRUD is ready.

What is next?

are we building just an empty admin panel? no you build a lot of plugins

Tomato Roles

  • tomato roles
  • tomato settings
  • tomato notifications
  • tomato forms
  • tomato API
  • tomato artisan
  • tomato browser
  • tomato components
  • tomato logs
  • tomato dusk
  • tomato backup
  • tomato translations
  • tomato subscription

these plugins make your app very easy to build and we have a greater support community you can get full docs of this package on this link

. . . . . . . . . .