Download the PHP package geekcell/ddd-bundle without Composer

On this page you can find all versions of the php package geekcell/ddd-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package ddd-bundle

Symfony Bundle for DDD

This Symfony bundle augments geekcell/php-ddd with framework-specific implementations to enable seamless domain driven design in a familiar environment.


Installation

To use this bundle, require it in Composer

Generator Commands

This bundle adds several MakerBundle commands to generate commonly used components.

In order to use them in your Symfony project, you need to require it with composer first

Available Commands

Building Blocks

Model & Repository

The domain model is a representation of the domain concepts and business logic within your project. The repository on the other hand is an abstraction layer that provides a way to access and manipulate domain objects without exposing the details of the underlying data persistence mechanism (such as a database or file system).

Since Doctrine is the de-facto persistence layer for Symfony, this bundle also provides an (opinionated) implementation for a Doctrine-based repository.

Generator Command(s)

This command can be used to generate:

AggregateRoot & Domain Events

Optionally, by inheriting from AggregateRoot, you can make a model class an aggregate root, which is used to encapsulate a group of related objects, along with the behavior and rules that apply to them. The aggregate root is usually responsible for managing the lifecycle of the objects within the aggregate, and for coordinating any interactions between them.

The AggregateRoot base class comes with some useful functionality to record and dispatch domain events, which represent significant occurrences or state changes within the domain of a software system.

Generator Command(s)

N/A

Example Usage

Hint: If you want to dispatch an event directly, use AggregateRoot::dispatch() instead of AggregateRoot::record().

If you cannot (or don't want to) extend from AggregateRoot, you can alternative use DispatchableTrait to add dispatching capabilities to any class. The former is however the recommended way.

Command & Query

You can use CommandBus and QueryBus as services to implement CQRS. Internally, both buses will use the Symfony messenger to dispatch commands and queries.

Generator Command(s)

These commands can be used to generate:

The query / command generated is just an empty class. The handler class is registered as a message handler for the configured Symfony Messenger.

Example Usage

Controller

A standard Symfony controller, but augmented with command and query bus(es).

Generator Command

This command can be used to generate a controller with optional QueryBus and CommandBus dependencies.

Resource

An API Platform resource, but instead of using the standard approach of using a combined entity/resource approach, it is preferred to separate model (domain layer) and API Platform specific resource (infrastructure layer)

Generator Command

Minimum required API Platform version is 2.7 for the new metadata system.


All versions of ddd-bundle with dependencies

PHP Build Version
Package Version
Requires doctrine/orm Version ^2.12
geekcell/container-facade Version ^1.0
geekcell/ddd Version ^1.1.0
symfony/config Version ^6.0 | ^7.0
symfony/dependency-injection Version ^6.0 | ^7.0
symfony/event-dispatcher Version ^6.0 | ^7.0
symfony/http-kernel Version ^6.0 | ^7.0
symfony/messenger Version ^6.0 | ^7.0
symfony/string Version ^6.0 | ^7.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package geekcell/ddd-bundle contains the following files

Loading the files please wait ....