composer require lumite-studios/livewire-repeatable
The "Repeatable Component" requires a view path to be passed as a property. You can optionally pass existing items as an array and a theme (or you can style it with your own classes.).
form.blade.php
<livewire:repeatable-component
:items="$items ?? [['input' => 'test']]"
theme="tailwind"
view="repeating-view"
/>
Within the repeating view an index and a data property will be available. The index can be used for any input names, and the data property will contain any data passed through the items property.
repeating-view.blade.php
<div class="flex-grow">
<label for="fields[{{ $index }}][input]">Input</label>
<input name="fields[{{ $index }}][input]" type="text" :value="$data['input'] ?? null">
</div>