package sihl

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

sihl 0.1.3

Libraries

This package provides the following libraries (via ocamlobjinfo):

sihl

Documentation:

  • Sihl Sihl is a high-level web application framework providing a set of composable building blocks and recipes that allow you to develop web apps quickly and sustainably. Statically typed functional programming with OCaml makes web development fun and safe.

sihl.app

Documentation:

  • App A Sihl app is something that can be started and stopped and that users can interact with through HTTP or CLI commands. It contains configuration, HTTP endpoints, a list of services, schedules and CLI commands.

sihl.authn

Documentation:

  • Authn Use this module to verify whether a user is who the user claims to be.

sihl.authz

Documentation:

  • Authz Authorization 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.

sihl.cmd

Documentation:

  • Cmd Use this module to create your own command line commands in order to interact with the Sihl app.

sihl.configuration

Documentation:

  • Configuration An app’s configuration is everything that is likely to vary between deploys (staging, production, developer environments, etc).

sihl.core

Documentation:

  • Core Contains everything regarding services, their lifecycles and request contexts. You want to touch this only if you develop Sihl services yourself.

sihl.data

Documentation:

  • Data Use this module to query the database, implement and run migrations, clean repositories, turn HTTP queries into SQL queries or for sane entity identifier handling.

sihl.email

Documentation:

  • Email Use this module to send single emails either immediately or later sending a lot of emails at once. Email template support is also provided.

sihl.http

Documentation:

sihl.log

Documentation:

  • Log Logging infrastructure.

sihl.message

Documentation:

  • Message Use 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.

sihl.middleware

Documentation:

sihl.queue

Documentation:

  • Queue This module provides a job queue. This is typically used for long-running or resource intensive tasks.

sihl.schedule

Documentation:

  • Schedule Schedules are functions that need to run periodically, similarly to cron jobs. Use this for instance to run clean up jobs.

sihl.seed

Documentation:

  • Seed A seed is a sequence of service calls that set a system state. Seeds are typically used before integration testing to set the initial state.

sihl.server

Documentation:

  • Server The web server service contains a HTTP server implementation.

sihl.session

Documentation:

  • Session Use this module to create user sessions and to read and write session data.

sihl.storage

Documentation:

  • Storage Use this module to store and retrieve large files. This is typically used for binary files such as images or audio.

sihl.token

Documentation:

  • Token The 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.

sihl.user

Documentation:

  • User This 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.

sihl.utils

Documentation:

  • Utils A collection of services and libraries that deal with JWT, Json, Regex, Randonmness, Hashing, Time and Strings.

sihl.web

Documentation:

  • Web This module provides the HTTP stack including API for requests, responses, middlewares, templating and a web server service.