The whole core framework file size is just 150kb, It's so slim. The framework be made up of a App class and the different of modules, such as route, config e.g. In the meantime, The framework support a series of friendly help for the api development.
Running speed like lightning, The framework just load what you need. When you output a "Hello World" , It just spend around one millisecond.
Separate-frontend-and-backend structure and using Vue. Support PHP unit test and run the framework by php cli mode. Integated the api blueprint protocol and support api mock.
What's the micro monolith router? There are a lot of teams are moving in the SOA service structure or micro service structure, I think it is difficult for a small team. So the micro monolith was born, what's this? In my opinion, this is a SOA process for a monolith application.
The tradition MVC pattern includes the model,view,controller layer. In general, you always write the business logic in the controller or model layer. But you will feel the code is difficult to read, maintain, expand after a long time. So I add a logic layer in the framework forcefully where you can implement the business logic by yourself.
The UserDefinedCase in the logics folder that can be loading before RouterHandle, where you can implement you logic before controller
The separate-frontend-and-backend and two-way data binding, modular is so popular.In the meantime, I moved the project easy-vue that built by myself to the framework as the view layer.
Service container is difficultly understand, I think it just a third party class, which can inject the class and instance. we can get the instance in the container very simple.
All output is json in the framework, neithor framework's core error or business logic's output, which is so friendly.Provide request param check and a gateway example in the demo/logics/gateway
Verify the coding forcefully before commit by used php_codesniffer. And verify the commit-msg forcefully before commit by used the script commit-msg wrote by Treri, which can enhance the git log readability and debugging, log analysis usefully, etc.
Usually after we write an api, the api documentation is a problem, we use the Api Blueprint protocol to write the api document and mock. At the same time, we can request the api real-timely by used Swagger.