What an app does is, by definition, its business logic. This layer is sandwiched between the service layer, which communicates with the outside world, and the data access layer (DAL), which communicates with the database.
One of our primary goals when creating Ravel was to give ourselves a way to write scalable and extensible code that requires only as much effort as it takes to write pseudocode on a napkin. In Ravel, new apps and features can be fully expressed without a database or the need for manual fixture generation. Frontend development is therefore immediately unblocked, as incidental complexity on the backend is minimized.
Understanding the business logic layer is essential for harnessing Ravel's most powerful features.
Imagine an app where there are users and accounts to which users belong. The class definitions might looks something like this: