Laravel Packages

Laravel Tenancy – Multi-Tenant Package for Laravel

Published
Laravel Tenancy – Multi-Tenant Package for Laravel image

Laravel Tenancy is a package by Daniël Klabbers, Paulo Trajano, and Bertrand Kintanar, for making your Laravel application multi-tenant:

The unobtrusive Laravel package that makes your app multi-tenant. Serving multiple websites, each with one or more hostnames from the same codebase. But with clear separation of assets, database and the ability to override logic per tenant.

Suitable for marketing companies that like to re-use functionality for different clients or start-ups building the next software as a service.

The Laravel Tenancy package includes the following features:

  • Integration with the Laravel framework
  • Event-driven extensible architecture
  • Close – optional – integration into the web server
  • The ability to add tenant-specific configs, code, routes, etc.

A couple of standard approaches to database architecture in multi-tenant applications include:

  • One database for system data and tenants’ tables are prefixed
  • One database for system data and separate tenant databases

Laravel Tenancy supports both methods, and you can manually customize it the way you want through event listeners.

The tenancy/tenancy package is the successor to hyn/multi-tenant, which means if you want to use this in production you’d probably use the hyn/multi-tenant package as tenancy/tenancy is still a work in progress.

The documentation for hyn/multi-tenant is an excellent place to start learning about Tenancy for requirements, installation, and implementation details.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

laravelcloud logo
Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Visit Laravel Cloud

The latest

View all →
Email Sending and Testing for Laravel in One Account image

Email Sending and Testing for Laravel in One Account

Read article
Decide with Jev: Tie Every AI Check to the Exact Draft image

Decide with Jev: Tie Every AI Check to the Exact Draft

Read article
PIE 1.5 Changes PHP Extension Installs in CI image

PIE 1.5 Changes PHP Extension Installs in CI

Read article
Delete Expired Sessions in Laravel With a Scheduled Command image

Delete Expired Sessions in Laravel With a Scheduled Command

Read article
Pollora: Run WordPress Inside a Laravel Application image

Pollora: Run WordPress Inside a Laravel Application

Read article
Scheduled Session Garbage Collection in Laravel 13.39 image

Scheduled Session Garbage Collection in Laravel 13.39

Read article