MyNixOS website logo
Description

An account authentication plugin for Yesod.

An auth plugin for accounts. Each account consists of a username, email, and password. The plugin provides new account, email verification, and password reset pages that can be customized to enhance the user experience.

This is a fork of the yesod-auth-account package with the following additions:

  • Login using either username or e-mail.

  • JSON support for single page applications.

We'd like to merge these changes back upstream but its maintainer has been unresponsive.

This package provides a Yesod authentication plugin for accounts. Each account consists of an username, email, and password. When initially creating an account, the email is verified by sending a link in an email. The plugin also supports password reset via email.

The plugin provides default pages implementing all of this functionality, but it has been designed to allow all the pages (new account page, password reset, etc.) to be customized or for the forms to be embedded into your own pages allowing you to just ignore the routes inside the plugin. The details are contained in the haddock documentation.

The plugin supports any form data storage by requiring you to implement a couple of interfaces for data access. The plugin has instances of these interfaces using persistent, but you can create your own implementation if you are not using persistent or want more control over user data access and storage.

A complete working example using persistent is example.hs. Also, see the haddock documentation.

Fork

This is a fork of the yesod-auth-account package with the following additions:

  • Login using either username or e-mail.

  • JSON support for single page applications.

We'd like to merge these changes back upstream but its maintainer has been unresponsive.

Metadata

Version

2.0.3

License

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows