optimistdigital / nova-notes-field

This Laravel Nova package adds a notes field to Nova's arsenal of fields.


Nova Notes Field

This Laravel Nova package adds a notes field to Nova's arsenal of fields.


  • Notes field on Detail view
  • Differentiation between user-added and system-added notes
  • Ability to add notes through the UI or programmatically
  • Ability to delete user-made notes (w/ confirmation modal)
  • Customizable placeholder support


Detail view


# Install the package via Composer
composer require optimistdigital/nova-notes-field

# Run automatically loaded migration(s)
php artisan migrate


Add HasNotes trait to the model that has the notes:

use OptimistDigital\NovaNotesField\Traits\HasNotes;

class ExampleModel extends Model
    use HasNotes;

Add NotesField to the matching resource:

use OptimistDigital\NovaNotesField\NotesField;

class SomeResource extends Resource
  // ...

  public function fields(Request $request)
    return [
      // ...
        ->placeholder('Add note'), // Optional

Adding notes programmatically

To add notes programmatically, use the method provided by the HasNotes trait:

 * Creates a new note and attaches it to the model.
 * @param string $note The note text which can contain raw HTML.
 * @param bool $user Enables or disables the use of `Auth::user()` to set as the creator.
 * @param bool $system Defines whether the note is system created and can be deleted or not.
 * @return \OptimistDigital\NovaNotesField\Models\Note
public function addNote($note, $user = true, $system = true)



This project is open-sourced software licensed under the MIT license.