Creating a nodejs framework from scratch

To learn more about nodejs i’ll try to create a framework from scratch. The goal is not to create a framework to be used in production
First, I will look how current frameworks works and try to understand it.
After that i try to do it step by step, and there is a lot of topics that i need to look into.
- How to structure properly my framework
- How to handle http messages
- Request
- Parameters
- Files
- Response
- Request
- Routing
- Basics routes
- Parameters in url
- Parameters validation
- Managing all methods
- Security aspect
- CORS
- OPTION method
- CSRF
- CORS
- Using a controller to handle my requests
- Accessing the database
- orm
- migration / sync of schema