بنقرة واحدة
create-module
Creates a domain or a module within an existing domain following the boilerplate conventions.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Creates a domain or a module within an existing domain following the boilerplate conventions.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | create-module |
| description | Creates a domain or a module within an existing domain following the boilerplate conventions. |
| license | MIT |
| compatibility | claude_code, codex, cursor, opencode |
Activate when the user asks to create a new domain or a simple module (no table, no form). Trigger phrases: "nuevo módulo", "nuevo dominio", "crear módulo", "agregar módulo", "create module".
If the user also wants listing, create and edit → use create-crud instead.
| Variable | Description | Example |
|---|---|---|
{Domain} | PascalCase domain | Inventory |
{domain} | lowercase domain | inventory |
{Module} | PascalCase module | Products |
{module} | lowercase module | products |
{module-slug} | kebab-case (URL) | products |
{isNewDomain} | Is this a brand-new domain? | yes / no |
Create a task list before writing any file. Mark each step as completed.
routes/{domain}.phpbootstrap/app.php (only if new domain)config/menu.phpapp/Livewire/App/{Domain}/{Module}/Index.php<?php
namespace App\Livewire\App\{Domain}\{Module};
use Livewire\Component;
use TallStackUi\Traits\Interactions;
class Index extends Component
{
use Interactions;
public function render()
{
return view('app.{domain}.{module-slug}._index');
}
}
resources/views/app/{domain}/{module-slug}/index.blade.php<x-layouts.app>
@livewire('app.{domain}.{module-slug}.index')
</x-layouts.app>
resources/views/app/{domain}/{module-slug}/_index.blade.php<div>
<div class="mb-6">
<h1 class="text-2xl font-bold text-content">{Module}</h1>
<p class="mt-1 text-sm text-content-muted">Gestión de {module-slug}</p>
</div>
</div>
routes/{domain}.phpIf the file already exists, add inside the existing group:
Route::get('/{module-slug}', fn () => view('app.{domain}.{module-slug}.index'))
->name('{module-slug}.index');
If this is a new domain, create routes/{domain}.php:
<?php
use Illuminate\Support\Facades\Route;
Route::prefix('{domain}')->name('{domain}.')->group(function () {
Route::get('/dashboard', fn () => view('app.{domain}.dashboard.index'))
->name('dashboard');
});
And also create the dashboard module files (Steps 1–3) with {Module} = Dashboard.
bootstrap/app.php (new domain only)Inside the then callback, add:
Route::middleware(['web', 'auth'])
->group(base_path('routes/{domain}.php'));
config/menu.phpSingle module (no children):
[
'label' => '{Module}',
'route' => '{domain}.{module-slug}.index',
'active_route' => '{domain}.{module-slug}.*',
'permission' => 'ver {module-slug}', // remove if no permission needed
],
New domain with children:
[
'label' => '{Domain}',
'icon' => 'layout-grid',
'active_route' => '{domain}.*',
'items' => [
[
'label' => 'Dashboard',
'route' => '{domain}.dashboard',
],
[
'label' => '{Module}',
'route' => '{domain}.{module-slug}.index',
'active_route' => '{domain}.{module-slug}.*',
],
],
],
feat: módulo {Domain}/{Module}
- Livewire `App\{Domain}\{Module}\Index`
- Vistas wrapper + componente en app/{domain}/{module-slug}/
- Ruta `{domain}.{module-slug}.index` en routes/{domain}.php
[- Nuevo dominio {domain} registrado en bootstrap/app.php]
[- Entrada en config/menu.php]
Generates a complete CRUD module following the boilerplate conventions.
Enforces Spanish Conventional Commits and branch naming for this project.
Creates a Laravel MCP server with tools, resources and prompts using laravel/mcp.
Develops reactive Livewire 4 components. Activates when creating, updating, or modifying Livewire components; working with wire:model, wire:click, wire:loading, or any wire: directives; adding real-time updates, loading states, or reactivity; debugging component behavior; or when the user mentions Livewire, component, or reactive UI.