benatespina / ddd-symfony
Other approach about the implementation of DDD into Symfony application
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 14
Watchers: 2
Forks: 3
Open Issues: 2
Type:project
Requires
- php: >=5.4
- beberlei/assert: ~2.3
- black/email: ~1.1
- carlosbuenosvinos/ddd: ~1.1
- doctrine/orm: ~2.5
- incenteev/composer-parameter-handler: ~2.0
- kreta/core-bundle: ~0.2
- ramsey/uuid: ~2.8
- sensio/distribution-bundle: ~3.0,>=3.0.12
- sensio/framework-extra-bundle: ~3.0,>=3.0.2
- symfony/monolog-bundle: ~2.4
- symfony/symfony: 2.6.*
- twig/extensions: ~1.0
Requires (Dev)
- fabpot/php-cs-fixer: ~2.0@dev
- phpspec/phpspec: ~2.2
This package is not auto-updated.
Last update: 2024-11-09 18:43:26 UTC
README
Other approach about the implementation of DDD into Symfony application
Why?
There are quite a few libraries/projects/bundles in Github that implement DDD into Symfony ecosystem, but I'm not convinced the file/directory structure that they follow. In this repository, I try to expose my own implementation of Domain Driven Development into a Symfony application.
Furthermore, I would like that this repository becomes to the Symfony scaffold for my future projects with this framework, so improvements are welcome! :)
Getting Started
This repository is a Symfony application so, to run requires PHP, Composer and any database that project will be support (for the moment MySQL).
NOTE: parameters.yml's
database_user
anddatabase_password
must have the same values that MySQL configuration.
Install the project's dependencies:
$ composer install
Configure the web server to serve the /web
directory of this project.
This project needs PHP 5.4 or higher to run so, you don't need to configure the web server, because you can use the Symfony command:
$ php app/console server:run
And that's all! Now, if you request
http://127.0.0.1:8000/
, you will see your site up and running.
Tests
This project is completely tested by BDD methodology with PHPSpec:
$ bin/phpspec run -fpretty
Contributing
This project follows some standards. If you want to collaborate, please ensure that your code fulfills these standards before any Pull Request.
$ bin/php-cs-fixer fix .
$ bin/php-cs-fixer fix . --config-file .phpspec_cs --fixers=-visibility
There is also a policy for contributing to this project. Pull requests must be explained step by step to make the review process easy in order to accept and merge them. New methods or code improvements must come paired with PHPSpec tests.
If you would like to contribute it is a good point to follow Symfony contribution standards, so please read the Contributing Code in the project documentation. If you are submitting a pull request, please follow the guidelines in the Submitting a Patch section and use the Pull Request Template.
Credits
Based on:
- beberlei's Symfony Minimal Distribution
- dddinphp's Last Whishes
- dddinphp's Repository Examples
Created by benatespina - benatespina@gmail.com. Copyright (c) 2015