Mexidense / laravel-ddd-skeleton

A Domain-Driven Design skeleton done in Laravel

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Domain-Driven Design in Laravel

Installation

  • Clone repository:

    git clone git@github.com:Mexidense/laravel-ddd-skeleton.git
  • Install packages:

    composer install  
  • Generate & set application key

    php artisan key:generate

Usage

  • Run server
    php artisan serve

Directories

  • src: Contains code sources of the whole of application.
    • Common/Infrastructure: Contains all of related common infrastructure that the application may need to share.
      • Laravel: Contains required files for Laravel framework. The file paths are set up on Application.php file.
    • User: Contains all of related user domain. Following the layered architecture, here we have:
      • Infrastructure
      • Application
      • Domain
  • test:
    • Common: All unit and feature tests.
    • User: All unit and feature tests.
.
├── src
│   ├── Common
│   │   └── Infrastructure
│   │       ├── Console
│   │       ├── Events
│   │       ├── Http
│   │       │   ├── Controllers
│   │       │   ├── Exceptions
│   │       │   ├── Middleware
│   │       │   ├── Routes
│   │       │   └── Security
│   │       └── Laravel
│   │           ├── bootstrap
│   │           │   └── cache
│   │           ├── config
│   │           ├── database
│   │           │   ├── factories
│   │           │   ├── migrations
│   │           │   └── seeders
│   │           ├── public
│   │           ├── resources
│   │           │   ├── css
│   │           │   ├── js
│   │           │   ├── lang
│   │           │   │   └── en
│   │           │   └── views
│   │           └── storage
│   │               ├── app
│   │               │   └── public
│   │               ├── framework
│   │               │   ├── cache
│   │               │   │   └── data
│   │               │   ├── sessions
│   │               │   ├── testing
│   │               │   └── views
│   │               └── logs
│   └── User
│       ├── Application
│       ├── Domain
│       └── Infrastructure
│           ├── EloquentModels
│           └── Http
│               └── Routes
└── tests
    ├── Common
    │   ├── Feature
    │   └── Unit
    └── User
        ├── Feature
        └── Unit

About

A Domain-Driven Design skeleton done in Laravel


Languages

Language:PHP 80.4%Language:Blade 18.7%Language:Shell 0.9%