Marcado legible
Blade y HTML deben escribirse en varias líneas y con sangría. No generes marcado minificado: varios elementos colapsados en una sola línea, o una vista o componente completo escrito como una única línea larga.
- Un elemento con hijos se abre y se cierra en su propia línea, con los hijos sangrados un nivel.
- Los elementos hermanos van en líneas separadas.
- Las directivas de Blade como
@if,@foreachy@canse abren y se cierran en sus propias líneas, con el cuerpo sangrado. - Una lista de atributos larga — aproximadamente tres o más atributos, o una lista larga de clases de Tailwind — puede dividirse con un atributo por línea.
Un elemento sin hijos con una lista corta de atributos puede permanecer en una sola línea, como <x-input wire:model="object.name" :label="__('Name')" />. El contenido corto en línea se queda donde corresponde: no separes <strong>, <a> o {{ }} del párrafo o la etiqueta que los contiene solo para cumplir esta regla.
Esta regla rige el marcado que se escribe o se genera. No reformatees marcado existente que no se haya tocado solo para cumplirla. Las plantillas bajo resources/views/vendor/, la salida de compilación y los assets minificados quedan fuera del alcance.
{{-- Wrong --}}
<div class="flex flex-col gap-4"><x-input wire:model="object.name" :label="__('Name')" /><x-button type="submit">{{ __('Save') }}</x-button></div>
{{-- Correct --}}
<div class="flex flex-col gap-4">
<x-input wire:model="object.name" :label="__('Name')" />
<x-button type="submit">{{ __('Save') }}</x-button>
</div>