Skip to content

scaabel/domains

 
 

Repository files navigation

Laravel Domains

A simple package to set up domains for your applications.

Installation

To install through composer, run the following command from terminal:

composer require supplycart/domains

Then publish config using:

php artisan vendor:publish

Usage

You can set up a domain by creating a domain class which extends Supplycart\Domains\Domain and register it inside domains.php config file like this:

<?php

return [
    'modules' => [
        App\Domains\User\UserDomain::class
    ]
];

The folder structure suggested is as below:

app/
   - Domains/
        - User/
            - database/
                - migrations/
            - Events/
            - Http/
                - Controllers/
                - routes.php # all routes in here
            - Jobs/
            - Listeners/
            - Models/
            - Policies/
            - UserDomain.php # your domain class
        - Cart
            ...
        - Order
            ...

Command to populate domain folder

php artisan make:domain DomainName

To populate events, listeners and jobs you may pass in the --queues argument.

php artisan make:domain DomainName --queues

Migration

To create migrations for your domain, run the following command from terminal:

php artisan domain:make-migration DomainName MigrationName

Controller

To create controllers for your domain, run the following command from terminal:

php artisan domain:make-controller DomainName ControllerName

To make an invokable controller you may pass in --invokable argument.

php artisan domain:make-controller DomainName ControllerName --invokable

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%