My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Links

Overview

In it's first release, till now it was one and only release, OxyBase was just a simple ZF extension that offered not much - ability to split project in "domains" like front-end, admin and had integrated and ready to use libraries like Doctrine, Smarty. But since then I have learned a lot and now I want to drift away with this project.

Thing is that I will not be focusing on "Front-end" stuff with OxyBase. My idea is to make OxyBase a back-end framework that can be used by developers while implementing their system back-end.

I do agree that PHP is not the best tool for back-ends, but at some cases it is useful to have ready-to-go framework that enables you very easily deploy web services, integrate with messaging systems like RabbitMQ, has DDD framework, has components that is required for CQRS. So this project aims to help in those situations when for some reasons you want to use PHP to create a back-end.

Official definition is written below :)

OxyBase

What is OxyBase in overall?

OxyBase is a project which aims to provide a use case how to create system by applying SOA, DDD centric approach, CQRS architecture as service architecture and all this would be done in PHP.

What OxyBase provides?

OxyBase has a framework to aid developers while creating DDD centric domains that applies Event Sourcing pattern, while implementing CQS pattern as an application architecture, while publishing application's services/interface over web service, while managing development life-cycle, while deploying application. It also has out of the box ready project structure.

When you should use OxyBase?

  • If you have complex domain (very complex business rules)
  • If your project is not data centric
  • If you want to create a back-end application with PHP and integrate it into existing system(does not matter what platform it's built on)
  • If you have at least 1 experienced developer in your team
  • If you know what is OOP
  • If you know what is DDD
  • If it's likely that your entities will have to handle concurrent requests

When you should not use OxyBase?

You can use it for any kind of project, but more likely that you will not benefit from packages and features it provides. Although, if you will try to implement some small, not complex application by using all those "things" described above - most likely that you will fail, because it will be just to much work and very little benefit. why to avoid cqrs read this before you start redesigning anything.

Current Status

Updated 2012-01-05

Finished OxyTool that will assist developers with all infrastructure setup. Define and create project layout/structure will be easy and flexible. Adding components like aggregate roots will be achieved by executing one line of code.

Updated 2011-04-24

Trunk has been stabilized now. It has sample app and in Wiki section you will find "Getting Started" document that will explain how to get things working. At the moment i am working on documentation.

Powered by Google Project Hosting