After my experience with Laravel, I was impressed by the levels of abstraction there, which inspires me to create my own PHP framework in order to boost my OOP and PHP knowledge.
The challenge
It was challenging for me because I didn't find any useful resource which can explain to me where to start and what are the best practices that can make my framework scalable and easy to extend.
I tried exploring the Laravel source code, but I couldn't follow it because there were plenty of methods and classes, and what I wanted is just the starting point.
The first step
Till I found this amazing youtube video from FreeCodeCamp. I got what I wanted, which is the project setup and main classes.
I started by creating the Application
class which acts like glue for the other components. Then I added the Route
, Request
, and Response
classes, their role is to map the requested endpoint with the appropriate response using the same routes definition syntax used in Laravel.
More features
After working with a basic request-response app, I aimed to add the following improvements:
- OAuth providers API implementation: Google, Facebook, and GitHub
- Basic ORM and database querying methods
- Views manipulation methods
- Form builder and validation
- Session management and flash messages
Finally
Thank you for reaching the end of this description. If you have any questions, or suggestions, or need help feel free to contact me.
Have a nice day ^_^