> For the complete documentation index, see [llms.txt](https://talltips.novate.co.uk/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://talltips.novate.co.uk/laravel.md).

# Laravel

- [Tabler Icons Component](https://talltips.novate.co.uk/laravel/tabler-icons-component.md): Simple Laravel 7+ component to display one of the Tabler icon set
- [Password-less Login with Laravel 8+](https://talltips.novate.co.uk/laravel/passwordless-login.md): Create a pass-phrase or 'magic-link' login system for Laravel 8 and Jetstream
- [Password-less Login with Magic Link in Laravel 8](https://talltips.novate.co.uk/laravel/password-less-login-with-magic-link-in-laravel-8.md): Provide users with a secure URL that automatically logs them in
- [Laravel Resources](https://talltips.novate.co.uk/laravel/laravel-resources.md)
- [Laravel Breeze Login Conditional Redirect](https://talltips.novate.co.uk/laravel/laravel-breeze-login-conditional-redirect.md): When you want to redirect a user after login according to their role, and using Laravel Breeze
- [Jetstream Login Conditional Redirect](https://talltips.novate.co.uk/laravel/laravel-8-conditional-login-redirects.md): How to provide different redirects at login when using Laravel Fortify and Jetstream
- [Simplify Laravel CRUD Controllers](https://talltips.novate.co.uk/laravel/simplify-laravel-crud-controllers.md): Reusing the same form for create and update
- [CSRF and expired login forms](https://talltips.novate.co.uk/laravel/csrf-and-expired-login-forms.md): How to handle a page with a login form that will expire
- [CSRF and expired logout forms](https://talltips.novate.co.uk/laravel/csrf-and-expired-logout-forms.md): Prevent users seeing a 419 Page Expired when logging out
- [Add your own logo to Laravel Mail](https://talltips.novate.co.uk/laravel/add-your-own-logo-to-laravel-mail.md): Amending the template is easy to add your logo to the mail header
- [Specify a different mail theme for Notifications](https://talltips.novate.co.uk/laravel/specify-a-different-mail-theme-for-notifications.md): Where to place a custom mail theme in Laravel
- [Show custom page when email verification link expired](https://talltips.novate.co.uk/laravel/show-custom-page-when-email-verification-link-expired.md): Using Laravel 10 with Breeze + Blade starter kit
- [Using a mutator to save currency](https://talltips.novate.co.uk/laravel/using-a-mutator-to-save-currency.md): When user enters Pounds & Pence or Dollars & Cents
- [Using Spatie Valuestore to hold frequently accessed settings](https://talltips.novate.co.uk/laravel/using-spatie-valuestore-to-hold-frequently-accessed-settings.md): Domain specific settings
- [Using the old() helper](https://talltips.novate.co.uk/laravel/using-the-old-helper.md): Populate a form with user's previous entry, or default data
- [Alternatives to using Eloquent Accessor](https://talltips.novate.co.uk/laravel/alternatives-to-using-eloquent-accessor.md): Using computed columns in MySQL
- [UpdateOrCreate may not update timestamp](https://talltips.novate.co.uk/laravel/updateorcreate-may-not-update-timestamp.md): When the record is identical, the updated\_at timestamp is not changed
- [Use of lockForUpdate()](https://talltips.novate.co.uk/laravel/use-of-lockforupdate.md): Locking the database between read and update of a database record
- [Using S3](https://talltips.novate.co.uk/laravel/using-s3.md): Various tips for working with S3 storage from your Laravel application
- [Super Simple User Based Feature Flags](https://talltips.novate.co.uk/laravel/super-simple-user-based-feature-flags.md): Through a simple addition to the user model we can enable application features for specific users only
- [Installing a Specific Version of Laravel](https://talltips.novate.co.uk/laravel/installing-a-specific-version-of-laravel.md): Use Composer to setup a project in an earlier version of Laravel
- [Versioning your Laravel Project](https://talltips.novate.co.uk/laravel/versioning-your-laravel-project.md): Create a string which pulls information from your Git history
- [CSS Cache Busting with your Git Commit SHA](https://talltips.novate.co.uk/laravel/css-cache-busting-with-your-git-commit-sha.md): When not using MIX and its versions
- [Adding column to Database Notifications table](https://talltips.novate.co.uk/laravel/adding-column-to-database-notifications-table.md): When you need additional scope on notifications
- [Find nearby locations using the Haversine formula in Eloquent query](https://talltips.novate.co.uk/laravel/find-nearby-locations-using-the-haversine-formula-in-eloquent-query.md): Uses the haversine formula to find all DB records with a location within a specified radius
- [Using Queues on Shared Hosting with Laravel](https://talltips.novate.co.uk/laravel/using-queues-on-shared-hosting-with-laravel.md): When all you have is CRON
- [Create Guaranteed Unique Invoice Number in Laravel](https://talltips.novate.co.uk/laravel/create-guaranteed-unique-invoice-number-in-laravel.md): Not as simple as it may sound.  How to avoid problems from race conditions.
- [Send Notification to all team members](https://talltips.novate.co.uk/laravel/send-notification-to-all-team-members.md): When one email should be sent using routeNotificationForMail
- [Protect Staging site with Basic Auth](https://talltips.novate.co.uk/laravel/protect-staging-site-with-basic-auth.md): When you don't want public sites crawling
- [Working with Enums](https://talltips.novate.co.uk/laravel/working-with-enums.md): Tips and handy utilities for working with enums in your Laravel project
- [PHP DateTime formatting cribsheet](https://talltips.novate.co.uk/laravel/php-datetime-formatting-cribsheet.md): Describes the placeholders you can use when formatting dates in PHP or with Carbon
