Sihl_authnUse this module to verify whether a user is who the user claims to be.
Library sihl.authz
Sihl_authzAuthorization deals with the question whether a user is allowed to do something. Use this module to separate the definition of who is allowed to do what from checking it.
Library sihl.core
Sihl_coreThis is the core of Sihl, every other component builds on top of it.
Library sihl.database
Sihl_databaseUse this module to query the database, implement and run migrations, clean repositories, turn HTTP queries into SQL queries or for sane entity identifier handling.
Library sihl.email
Sihl_email_coreUse this module to send single emails either immediately or later sending a lot of emails at once. Email template support is also provided.
Sihl_messageUse this module to display flash messages to the user across the request-response lifecycle. This is typically used to provide feedback to the user after submitting HTML forms.
Library sihl.middleware
Sihl_middlewareA middleware is a function that takes a Http.Route.handler and returns a Http.Route.handler. It is typically used to add content to the request context that is valid only during a request.
Library sihl.migration
Sihl_migrationUse the migration service to implement, register and run migrations.
Sihl_queue_coreThis module provides a job queue. This is typically used for long-running or resource intensive tasks.
Library sihl.repository
Sihl_repositoryThe repository service deals with cleaning repositories. This is useful for integration tests.
Library sihl.schedule
Sihl_scheduleSchedules are functions that need to run periodically, similarly to cron jobs. Use this for instance to run clean up jobs.
Library sihl.session
Sihl_sessionUse this module to create user sessions and to read and write session data.
Library sihl.storage
Sihl_storage_coreUse this module to store and retrieve large files. This is typically used for binary files such as images or audio.
Library sihl.token
Sihl_tokenThe token service provides an API to generate tokens that carry some data and expire after a certain amount of time. It takes care of secure random byte generation and the persistence and validation of tokens.
Library sihl.user
Sihl_userThis module provides the abstraction of a user that interacts with the Sihl ap. Use it to register new users, changes password, reset passwords and update user details.
Library sihl.utils
Sihl_utilsA collection of services and libraries that deal with JWT, Json, Regex, Hashing, Time and Strings.