Repository
https://github.com/designcise/bitframe
BitFrame PHP Microframework
BitFrame is a free, opensource, PHP microframework that's:
- PSR-15 and PSR-7 compatible middleware microframework for PHP;
- Highly customizable and event driven;
- Simple to learn, use and implement;
- Follows the PSR standards and integrates the best of existing opensource frameworks wherever possible.
BitFrame's approach of making the middleware dispatcher the core component of the framework encourages the developer to use middleware-based services that plug right-in with ease. This allows for great flexibility especially in terms of debugging, replacements and updating. This design pattern is particularly advantageous for long-term and strategic projects because as they grow in complexity the underlying framework helps keep things well-organized, easy-to-manage and very simple.
At the core of BitFrame's development, the focus has been to abide by some simple rules that are mostly found missing in other microframeworks:
- Be well-documented and intuitive;
- Facilitate the developer and be nonintrusive;
- Be free of unnecessary bloat;
- Promote modularity to allow any component of the framework to be easily replaced;
- Provide the flexibility of using existing PSR-15 / PSR-7 middlewares that plug right in easily;
- Provide the ability to share variables and application data seamlessly across all the middlewares.
Requirements
- PHP 7.1.0 or newer
- Webserver with URL Rewriting (such as Apache or nginx)
- Composer
To get started with BitFrame, read the documentation available at the BitFrame Official Website.
Contribute
- File issues at https://github.com/designcise/bitframe/issues
- Issue patches to https://github.com/designcise/bitframe/pulls
- For general inquires, submitting a bug or security issues, requesting to join the dev team or to request a new feature use the contact form at https://www.bitframephp.com/contact
To make contributions to the code, please refer to the following guidelines:
Pull Requests
- Fork the BitFrame Framework repository;
- Create a new branch for each feature or improvement;
- Send a pull request from each feature branch against the version branch for which your fix is intended.
It is very important to separate new features or improvements into separate feature branches, and to send a pull request for each branch. This allows each feature or improvement to be reviewed and merged individually.
Style Guide
All pull requests must adhere to the PSR-2 standard.
Unit Testing
All pull requests must be accompanied by passing unit tests and complete code coverage. The BitFrame Framework uses PHPUnit for testing.
Roadmap
- Update code to be consistently compatible with PSR standards;
- Phase out support for PSR-7 style middlewares when PSR-15 middlewares become widely adopted;
- Create add-ons that assist developers in creating commonly used components (such as a mailer, cache, access control, etc.);
- Optimize to be lighter and faster;
- Branch out event manager to its own repository when PSR-14 draft is accepted.