diff --git a/source/assets/build/js/main.js b/source/assets/build/js/main.js index cb7f741..6f489a6 100644 --- a/source/assets/build/js/main.js +++ b/source/assets/build/js/main.js @@ -226,8 +226,8 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var high /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { -__webpack_require__(/*! /Users/samuel/Projects/tenancyforlaravel/source/_assets/js/main.js */"./source/_assets/js/main.js"); -module.exports = __webpack_require__(/*! /Users/samuel/Projects/tenancyforlaravel/source/_assets/css/main.css */"./source/_assets/css/main.css"); +__webpack_require__(/*! /Users/samuel/Projects/tenancy-docs/source/_assets/js/main.js */"./source/_assets/js/main.js"); +module.exports = __webpack_require__(/*! /Users/samuel/Projects/tenancy-docs/source/_assets/css/main.css */"./source/_assets/css/main.css"); /***/ }) diff --git a/source/assets/build/js/turbolinks.js b/source/assets/build/js/turbolinks.js index 32e3e38..bd9b547 100644 --- a/source/assets/build/js/turbolinks.js +++ b/source/assets/build/js/turbolinks.js @@ -115,7 +115,7 @@ eval("var Turbolinks = __webpack_require__(/*! turbolinks */ \"./node_modules/tu /*! no static exports found */ /***/ (function(module, exports, __webpack_require__) { -module.exports = __webpack_require__(/*! /Users/samuel/Projects/tenancyforlaravel/source/_assets/js/turbolinks.js */"./source/_assets/js/turbolinks.js"); +module.exports = __webpack_require__(/*! /Users/samuel/Projects/tenancy-docs/source/_assets/js/turbolinks.js */"./source/_assets/js/turbolinks.js"); /***/ }) diff --git a/source/docs/v3/event-system.blade.md b/source/docs/v3/event-system.blade.md index 633f8df..e3ed4bb 100644 --- a/source/docs/v3/event-system.blade.md +++ b/source/docs/v3/event-system.blade.md @@ -145,33 +145,33 @@ Note the difference between *initializing tenancy and bootstrapping* tenancy. Te The following events are dispatched as a result of Eloquent events being fired in the default `Tenant` implementation (the most often used events are bold): - `CreatingTenant` -- `**TenantCreated**` +- **`TenantCreated`** - `SavingTenant` - `TenantSaved` - `UpdatingTenant` - `TenantUpdated` - `DeletingTenant` -- `**TenantDeleted**` +- **`TenantDeleted`** ### Domain These events are optional. They're only relevant to you if you're using domains for your tenants. - `CreatingDomain` -- `**DomainCreated**` +- **`DomainCreated`** - `SavingDomain` - `DomainSaved` - `UpdatingDomain` - `DomainUpdated` - `DeletingDomain` -- `**DomainDeleted**` +- **`DomainDeleted`** ### Database These events are also optional. They're relevant to you if you're using multi-database tenancy: - `CreatingDatabase` -- `**DatabaseCreated**` +- **`DatabaseCreated`** - `MigratingDatabase` - `DatabaseMigrated` - `SeedingDatabase` @@ -179,9 +179,9 @@ These events are also optional. They're relevant to you if you're using multi-da - `RollingBackDatabase` - `DatabaseRolledBack` - `DeletingDatabase` -- `**DatabaseDeleted**` +- **`DatabaseDeleted`** ### Resource syncing -- `**SyncedResourceSaved**` +- **`SyncedResourceSaved`** - `SyncedResourceChangedInForeignDatabase` diff --git a/source/docs/v3/package-comparison.md b/source/docs/v3/package-comparison.md index 3a43d3b..789e674 100644 --- a/source/docs/v3/package-comparison.md +++ b/source/docs/v3/package-comparison.md @@ -25,8 +25,6 @@ It would have been a good option for when you want to implement multi-tenancy ma I'm not sharing this to intentionally make hyn/multi-tenancy bad, but **be very careful if you decide to go with that package**. -- It will very likely be sunset — or, in other words, killed — soon, since tenancy/tenancy is being released. - ## tenancy/tenancy This package intends to provide you with a framework for building your own multi-tenancy implementation. The documentation is quite lacking, so I couldn't get a too detailed idea of what it does, but from my understanding, it gives you things like events which you can use to build your own multi-tenancy logic. @@ -37,19 +35,9 @@ However, if you're looking for a package that will help you make a multi-tenant ## spatie/laravel-multitenancy -It's hard to find good things to say about this package. It's basically a simplified copy of v2 of stancl/tenancy. +This package is a very simple implementation of multi-tenancy. -stancl/tenancy was the first package to use the automatic approach. The Spatie package is a copy of that, though in Freek's words, he hasn't looked into other packages prior to developing his. - -[https://twitter.com/freekmurze/status/1257765177174482944](https://twitter.com/freekmurze/status/1257765177174482944) - -(That, in my opinion, is a red flag, since you'd want to do research before just blindly coding something and marketing it.) - -The package is basically Mohamed Said's video series on multi-tenancy glued into a package. - -They also don't seem to have an interest in having their package help the largest amount of people: - -[https://twitter.com/freekmurze/status/1260187383191961601](https://twitter.com/freekmurze/status/1260187383191961601) +It does the same thing as stancl/tenancy v2, but with far fewer features out of the box. The only benefit I see in this package compared to v2 of stancl/tenancy is that it uses Eloquent out of the box, which makes things like Cashier integration easier. But, that's irrelevant since we're in v3 already and v3 uses Eloquent. @@ -111,4 +99,4 @@ To give you an incomplete-but-good-enough list of features, this package support - **Syncing users (or any other database resources) between multiple tenant databases** - Dependency injection of the current tenant - Tenant **user impersonation** -- **Cached tenant lookup**, universal for all tenant resolvers \ No newline at end of file +- **Cached tenant lookup**, universal for all tenant resolvers diff --git a/source/index.blade.php b/source/index.blade.php index cc8b900..141de0a 100644 --- a/source/index.blade.php +++ b/source/index.blade.php @@ -101,11 +101,7 @@ dispatch(new SendOrderCreatedMail);
- - - - +
@@ -121,9 +117,7 @@ dispatch(new SendOrderCreatedMail);
- - +
@@ -139,10 +133,7 @@ dispatch(new SendOrderCreatedMail);
- - - +
@@ -197,11 +188,7 @@ fill="none" viewBox="0 0 404 784">
- - - - +
@@ -216,15 +203,11 @@ fill="none" viewBox="0 0 404 784">
- - - - +
-
Single-database tenancy
+
Single or multi-database tenancy

Don't want to use the database-per-tenant approach? No problem, we provide you with model traits for scoping models to the current tenant, including models that aren't related to the tenant directly.

@@ -235,11 +218,7 @@ fill="none" viewBox="0 0 404 784">
- - - - +
@@ -287,10 +266,7 @@ fill="none" viewBox="0 0 404 784">
- - - +
Shared users between tenants
@@ -301,10 +277,7 @@ fill="none" viewBox="0 0 404 784">
- - - +
User impersonation
@@ -315,9 +288,7 @@ fill="none" viewBox="0 0 404 784">
- - - +
Works with any database
@@ -508,56 +479,62 @@ fill="none" viewBox="0 0 404 784">
-
-
- - -
-
- - Kronos - -
-
-
-

- “Tenancy for Laravel allowed us to effortlessly and quickly integrate the needed - landlord/tenant functionality - needed for our SaaS platform. It fits our needs perfectly.” -

-
-
-
-
- Kronos -
-
-
Jørgen Solli
- - - - Owner, Kronos -
+
+
+
+
+ Kronos
-
-
-
-
+
+
+

+ “Tenancy for Laravel allowed us to effortlessly and quickly integrate the needed + landlord/tenant functionality for our SaaS platform. It fits our needs perfectly.” +

+
+ +
+
+
+
+ Napp +
+
+
+

+ “This package enabled us to abstract all the context switching to focus our development efforts elsewhere. That resulted in significant performance increase. The event driven architecture is powerful, flexible and bends to all our needs.” +

+
+
+
+
+ Mads Møller +
+
+
Mads Møller +
+
+ CTO, Napp +
+
+
+
+
+
+