Welcome to Efika 1.0 Dev
Development of Efika for PHP 5.3.x has been stopped. Efika will rewrite with a lot new features available since PHP 5.4. A Git Repository will be avaiable soon.
New Efika will available under Efika Nova
Some Features of efika will replace by other libraries such as Guzzle or Pimple. Efika's keyfeatures won't be touched. More Information will follow soon.
We are looking for people who are support efika. What do you need to do? Tell us what do you request to improve Efika. Just send an Issue and choose "Whish" label. You could also help to develope Efika or libraries for more Efika.
Each support will be add to our credits (just if you would like.)
Efika is a minimal rapid application development framework. Efika use latest PHP 5.3 features like
- Closures & Lambda
- GOTO operator
- late static bindings
- _ DIR _ (or dirname(_ _ FILE_ _))
Efika is in development, there don't use Efika for production code!
Efika will be develope for own software projects. Efika is be also part of my expanding knowledge process. Efika is open source and could be used by every one!
Efika is designed for different types of webapplications. Our philosophy aims to these points:
- Lightweight and fast
- Packagebased und expandeble
- Easy and understandable code
- open source!
- Core (Eventdispatcher, Collection, Autoloader, Failurehandling)
- Depency Injection Foundation -> Outsource / extend to pimple
- HTTP Wrapper -> Outsource to Guzzle
- MVC Layer
- Systemmessages (L10N, I18N)
Modulestrategy will provide features like individueal loading and module handling.
Runtime object manipulation
Di package provide runtime object manipulation. Overwrite, extend and manage methods and propertiesof an object at runtime. Original objects will not changed.
Event driven and modulebased MVC Layer
Efika MVC is full event driven and modulebased. If you want to run a MVC application create an instance of \Efika\Mvc\Application. Application need an instance of \Efika\Module\Module. Configure Application with Efika\Mvc\Bootstrap and run Application. Application will route and dispatch a controller. The controller will dispatch an action. The action will finally set a viewmodel. The viewmodel will send content to http response classes. Applications complete event will check for errors and send content to browser.
Http classes deliver http message (request and response) features.
Efika delivers the DataSources package, a data abstraction layer. This package provide abstraction of database and textbased data, like CSV, YML, JSON, XML, SOAP, and more.
I18N / L10N Support (Messages)
Message provide I18N and L10N support. Messages help to translate coremessages and custom messages into a language. en_US will be base locale.
Efika is licensed under the Open Source MIT license, so you can use it for any personal or corporate projects totally free!
Built by Marco Bunge