Download the PHP package amrshah/tenant-engine without Composer
On this page you can find all versions of the php package amrshah/tenant-engine. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download amrshah/tenant-engine
More information about amrshah/tenant-engine
Files in amrshah/tenant-engine
Package tenant-engine
Short Description Production-ready Laravel package for multi-tenant SaaS applications with Super Admin and Tenant Admin capabilities
License MIT
Homepage https://github.com/amrshah/tenant-engine
Informations about the package tenant-engine
TenantEngine - Multi-Tenant SaaS API Package for Laravel
Production-ready Laravel package for building Multi-Tenant SaaS APIs with Super Admin and Tenant Admin capabilities.
Features
Multi-Tenancy
- ✔ Path-based tenant identification (
/tenant-slug/api/...) - ✔ Automatic database isolation per tenant (powered by Stancl/Tenancy)
- ✔ Tenant-aware caching (Redis)
- ✔ Tenant-specific storage (S3/local)
- ✔ Complete tenant isolation
Three-Level Access System
- Super Admin Level - Manage all tenants, system analytics, global settings
- Central Level - Authentication, tenant selection, user profile
- Tenant Level - Tenant admin manages tenant resources
Authentication & Authorization
- ✔ Laravel Sanctum - Token-based authentication
- ✔ OAuth 2.0 - Google, Microsoft, LinkedIn, Facebook
- ✔ Laravel ARBAC - Advanced RBAC + ABAC hybrid
- ✔ Multi-tenant user access - Users can belong to multiple tenants
- ✔ Email verification & password reset
External ID System
- ✔ Nano ID with custom prefixes (
USR_xxx,TNT_xxx,CLI_xxx) - ✔ Never expose internal database IDs
- ✔ URL-safe, collision-resistant
- ✔ Automatic generation via model trait
API Standards
- ✔ JSON:API v1.1 compliant responses
- ✔ RESTful design principles
- ✔ API versioning (
/api/v1/...) - ✔ Cursor-based pagination for scalability
- ✔ Filtering, sorting, and including relationships
API Documentation
- ✔ Swagger/OpenAPI 3.0 specification
- ✔ Interactive API documentation (Swagger UI)
- ✔ Auto-generated from code annotations
System Health Monitoring
- ✔ Health check endpoints (
/health,/ping,/version,/status) - ✔ Database, Redis, Storage, Queue monitoring
- ✔ Performance metrics
Security
- ✔ Rate limiting (per user, per tenant, super admin)
- ✔ CORS configuration
- ✔ Security headers (CSP, X-Frame-Options, etc.)
- ✔ SQL injection prevention (Eloquent ORM)
- ✔ XSS protection
Performance
- ✔ Redis caching (tenant-aware)
- ✔ Database query optimization (indexes, eager loading)
- ✔ Queue support for heavy operations
- ✔ Horizontal scalability
Requirements
- PHP: 8.1 or higher
- Laravel: 10.x, 11.x, or 12.x
- MySQL: 8.0+ or PostgreSQL: 13+
- Redis: 6.0+ (for caching and queues)
- Composer: 2.5+
PHP Extensions
- BCMath, Ctype, Fileinfo, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML, cURL, Redis
Installation
The installation command will:
- ✔ Publish configuration files
- ✔ Publish and run migrations
- ✔ Create default roles and permissions
- ✔ Generate Swagger documentation
- ✔ Set up example tenant (optional)
✔ Configuration
Add to your .env file:
Quick Start
Create Super Admin
Create First Tenant
Access API Documentation
Navigate to:
API Endpoints
Super Admin APIs
Central APIs
Tenant Admin APIs
System Health
Documentation
- Installation Guide
- Configuration Guide
- Super Admin Guide
- Tenant Admin Guide
- API Reference
- Deployment Guide
Testing
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for details.
Security
If you discover any security-related issues, please email [email protected] instead of using the issue tracker.
License
The MIT License (MIT). Please see LICENSE for more information.
Author
Ali Raza (a.k.a Amr Shah)
- GitHub: @amrshah
- Email: [email protected]
- Website: amrshah.github.io
Acknowledgments
This package is built on top of excellent open-source packages:
- Laravel - The PHP framework
- Stancl/Tenancy - Multi-tenancy for Laravel
- Laravel Sanctum - API authentication
- Laravel Socialite - OAuth authentication
- Laravel ARBAC - Advanced RBAC + ABAC
- L5-Swagger - Swagger documentation
- Nano ID - Unique ID generator
Made with ❤️ by Ali Raza (Amr Shah)
Version: 1.0.0-alpha
Last Updated: 2025-11-23
All versions of tenant-engine with dependencies
illuminate/contracts Version ^10.0||^11.0||^12.0
stancl/tenancy Version ^3.8
laravel/sanctum Version ^3.3||^4.0
laravel/socialite Version ^5.11
amrshah/laravel-arbac Version *
hidehalo/nanoid-php Version ^1.1
darkaonline/l5-swagger Version ^8.5