Skip to main content

Profile Management

Peak offers a robust and user-friendly profile management interface powered by Laravel Jetstream. Users can view and update their personal information from the dashboard, and administrators can control access to this feature through the admin panel.

Enabling Profile Management​

By default, profile management is enabled. To disable or re-enable access to user profile settings:

Admin Panel → Settings → Security → Profile Management

Disabling this option will prevent users from editing their profile details in the dashboard.

Profile Page Location​

The profile management interface is implemented as a Vue component located at:

resources/js/Themes/Breeze/Pages/Dashboard/Account/Profile.vue

You may edit this component to:

  • Customize layout and styling
  • Add additional fields
  • Implement additional logic

To apply your changes, run:

npm run dev

or, for production:

npm run build

Editable Fields​

The default profile page allows users to update the following:

  • Name
  • Email Address
  • Username
  • Phone number
  • Bio
  • Social media links

Profile Update Flow​

The logic that handles user profile updates in Peak is encapsulated within a dedicated action class:

App\Actions\Fortify\UpdateUserProfileInformation

This class is automatically executed whenever a user submits changes to their profile. It is responsible for validating the submitted data and applying the necessary updates to the user's record.

To introduce any custom behavior—such as validating additional fields, transforming input, or handling file uploads—modifications should be made directly within this action class.

When invoked, the method receives two arguments:

The currently authenticated $user instance.

An $input array containing all submitted profile data, including the updated profile photo if provided.

Customizing this action allows you to extend or override the default update logic to meet the specific needs of your application.