genealabs/laravel-optimized-postgres

263,334 58
Install
composer require genealabs/laravel-optimized-postgres
Latest Version:12.0.1
PHP:^8.2
License:MIT
Last Updated:Mar 1, 2026
Links: GitHub  ·  Packagist
Maintainer: mikebronner

Optimized Postgres for Laravel

Optimized Postgres for Laravel

Join the chat at https://gitter.im/GeneaLabs/laravel-optimized-postgres

Impetus

By default I like my Postgres database to use text type for all textual fields. When you run your migrations with this package installed, it will convert the following migration types to text: char, and string.

Installation

Requirements

  • PHP 8.2+
  • Laravel 10, 11, 12, or 13

Version Support

PHP Laravel Support
8.2 10, 11
8.3 10, 11, 12, 13
8.4 10, 11, 12, 13
8.5 10, 11, 12, 13

Composer Command

composer require genealabs/laravel-optimized-postgres

Service Provider

If you are on Laravel 5.5, the service provider will auto-register once the package is installed. You can skip this step. If you haven't upgraded to Laravel 5.5 yet, add the following to the providers array in your \config\app.php file:

GeneaLabs\LaravelOptimizedPostgres\Providers\LaravelOptimizedPostgresService::class,

Usage

When writing migrations, be sure to remove the following use statement from the top of the file:

use Illuminate\Support\Facades\Schema;

This is included in the two default migrations provided with Laravel projects, but I don't believe is added when you make a new migration.

Future Updates

  • possibly expand to normalize numbers, more research needed.