datalogix/laravel-sensible

Laravel Sensible is a lightweight utility package for applying smart defaults and common best practices in everyday Laravel development.

v1.0.0 2025-04-15 18:57 UTC

This package is auto-updated.

Last update: 2025-04-15 18:59:08 UTC


README

Latest Stable Version Total Downloads tests StyleCI codecov License

Laravel Sensible is a lightweight utility package for applying smart defaults and common best practices in everyday Laravel development.

Installation

You can install the package via composer:

composer require datalogix/laravel-sensible

The package will automatically register itself.

Features

All features are optional and fully configurable via config/sensible.php:

  • 🚀 Asset Prefetching – Preload assets for faster load times.
  • ⚡️ Auto Eager Loading – Avoid N+1 queries automatically.
  • 😴 Fake Sleep – Mocks the delay function in tests, preventing real delays.
  • 🔒 Force HTTPS – Enforce secure https:// URLs.
  • 🕒 Immutable Dates – Prevent unexpected date mutations.
  • 🔄 Prevent Stray Requests – Block unmocked HTTP requests.
  • 🛑 Safe Console – Block dangerous Artisan commands.
  • 🔑 Set Default Password - Enforce strong password policies.
  • Strict Models – Enforce strict model behavior.
  • 🔓 Optional Unguarded Models – Disable mass-assignment protection.

Configuration

You can publish the config file using the command:

php artisan vendor:publish --provider="Datalogix\Sensible\SensibleServiceProvider" --tag="config"

This will create a config/sensible.php file where you can enable or disable individual features:`

// config/sensible.php

return [
    \Datalogix\Sensible\Configurables\Unguard::class => false,
    // other configurables...
];

By default, most features are enabled. Simply set any option to false to disable it.