Key concepts of a Thorin app

Before you start a Thorin app, there are a few key concepts that you should understand:

  • It uses Transports to abstract away incoming requests to your application. Whether it's from a web server, web socket or raw TCP socket, you shouldn't change much of your handlers to accommodate it.
  • It uses Stores to manage and abstract access to data stores, in one way or another.
  • It uses Sanitizers to verify incoming data and cast it to its appropriate type. You can think of them as raw functions that check if a value is of a specified type.
  • It uses Plugins to extend the core functionality and attach or handle additional functionality
  • It uses Libraries to handle business logic in one place
  • It uses Actions to define how your application behaves and the data structure it expects when interacting with external entities.
  • It uses Intents to abstract away the incoming data and provide an output result.
  • It uses Middleware and Authorization functions to prevent code duplication and encourage code reuse for your actions.
Do you have a question or is something missing?

You can always create a new issue on GitHub or contact one of the core founders by chat.