Somebody from the core team might be able to give a better explanation but here's a start:
Flarum mostly reuses concepts from Laravel and similar frameworks (and also reuses some code). So server side it's typical Laravel system with classes for Models, Providers, Controllers, Serializers, Repositories, and more. Client side it's based on Mithril so a lot of it is Component-based.
If you are familiar with those concepts you should be able to easily see how they were implemented in Flarum by having a look at the source code https://github.com/flarum/core or the API documentation https://api.flarum.redevs.org/
I hope it helps. Don't hesitate to ask more specific questions ?