package sihl

  1. Overview
  2. Docs
The modular functional web framework

Install

Dune Dependency

Authors

Maintainers

Sources

sihl-0.1.3.tbz
sha256=3d1acdd1eae24a7131033656f90b5d20c1621e6ef92957edf88a09b8b5f2d9e9
sha512=d224f54e20a9465c7a03d534dadcb2b9a181ae87c13731840db945aab37534f6f3982c5cb25a197e90c17d8772da062b19fa92bb93ed53a8b736c3776a7776db

doc/sihl.user/User/index.html

Module UserSource

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.

User handling is a common task in web development, so Sihl comes with a minimal user model Sihl.User.t. Typically you need some kind of domain user, like a customer that has pizza orders assigned or a applicant that submits applications. This is something that you implement while referencing to Sihl.User.t.

Installation

{ module Repo = Sihl.Data.Repo.Service.Make () module Cmd = Sihl.Cmd.Service.Make () module Log = Sihl.Log.Service.Make () module Db = Sihl.Data.Db.Service (Config) (Log) module MigrationRepo = Sihl.Data.Migration.Service.Repo.MakeMariaDb (Db) module Migration = Sihl.Data.Migration.Service.Make (Log) (Cmd) (Db) (MigrationRepo) }

Sourcemodule Authz : sig ... end
Sourcemodule Seed : sig ... end
Sourcemodule PasswordReset : sig ... end
Sourcetype t
Sourceval confirmed : t -> bool
Sourceval admin : t -> bool
Sourceval status : t -> string
Sourceval password : t -> string
Sourceval username : t -> string option
Sourceval email : t -> string
Sourceval id : t -> string
Sourceval created_at : t -> Ptime.t
Sourceval to_yojson : t -> Yojson.Safe.t
Sourceval pp : Caml.Format.formatter -> t -> unit
Sourceval show : t -> string
Sourceval equal : t -> t -> bool
Sourceval alcotest : t Alcotest.testable
Sourceval confirm : t -> t
Sourceval set_user_password : t -> string -> (t, string) Result.t
Sourceval set_user_details : t -> email:string -> username:string option -> t
Sourceval is_admin : t -> bool
Sourceval is_owner : t -> string -> bool
Sourceval is_confirmed : t -> bool
Sourceval matches_password : string -> t -> bool
Sourceval validate_new_password : password:string -> password_confirmation:string -> password_policy:(string -> (unit, string) Result.t) -> (unit, string) Result.t
Sourceval validate_change_password : t -> old_password:string -> new_password:string -> new_password_confirmation:string -> password_policy:(string -> (unit, string) Result.t) -> (unit, string) Result.t
Sourceval t : t Caqti_type.t

Usage

Sourcemodule Service : sig ... end
OCaml

Innovation. Community. Security.