packages feed

shomei-webauthn-0.3.0.0: shomei-webauthn.cabal

cabal-version: 3.0
name: shomei-webauthn
version: 0.3.0.0
synopsis:
  WebAuthn (passkey) registration/authentication ceremony interpreter

description:
  Interprets Shōmei's passkey ceremony port with the webauthn library. Handles
  the WebAuthn registration and authentication ceremonies that back passkey
  enrollment, passwordless login, and password-then-passkey step-up:
  challenge generation, attestation and assertion verification, origin and
  relying-party checks, and signature-counter handling. Depends only on
  shomei-core.

homepage: https://github.com/shinzui/shomei
bug-reports: https://github.com/shinzui/shomei/issues
license: MIT
license-file: LICENSE
author: Nadeem Bitar
maintainer: nadeem@gmail.com
copyright: 2026 Nadeem Bitar
category: Web, Security
tested-with: ghc ==9.12.4
extra-doc-files: CHANGELOG.md

source-repository head
  type: git
  location: https://github.com/shinzui/shomei.git

common warnings
  ghc-options:
    -Wall
    -Wcompat
    -Widentities
    -Wincomplete-record-updates
    -Wincomplete-uni-patterns
    -Wpartial-fields
    -Wredundant-constraints

common shared
  default-language: GHC2024
  default-extensions:
    BlockArguments
    DataKinds
    DeriveAnyClass
    DuplicateRecordFields
    LambdaCase
    OverloadedLabels
    OverloadedRecordDot
    OverloadedStrings

library
  import: warnings, shared
  hs-source-dirs: src
  exposed-modules: Shomei.WebAuthn.Ceremony
  build-depends:
    aeson >=2.1 && <2.3,
    base >=4.18 && <5,
    bytestring >=0.11 && <0.13,
    crypton >=1.1.0 && <1.2,
    effectful >=2.5 && <2.8,
    effectful-core >=2.5 && <2.8,
    mtl >=2.3 && <2.4,
    shomei-core ^>=0.3.0.0,
    text >=2.0 && <2.2,
    time >=1.12 && <1.15,
    time-hourglass >=0.3 && <0.4,
    validation >=1.1 && <1.3,
    webauthn >=0.12 && <0.13,

test-suite shomei-webauthn-test
  import: warnings, shared
  type: exitcode-stdio-1.0
  hs-source-dirs: test
  main-is: Main.hs
  other-modules:
    Shomei.WebAuthn.CeremonySpec
    Shomei.WebAuthn.SoftwareAuthenticator
    Shomei.WebAuthn.WorkflowSpec

  build-depends:
    aeson >=2.1 && <2.3,
    base >=4.18 && <5,
    bytestring >=0.11 && <0.13,
    containers >=0.6 && <0.9,
    crypton >=1.1.0 && <1.2,
    effectful >=2.5 && <2.8,
    effectful-core >=2.5 && <2.8,
    ram >=0.22 && <0.23,
    shomei-core ^>=0.3.0.0,
    shomei-webauthn ^>=0.3.0.0,
    tasty >=1.4 && <1.6,
    tasty-hunit >=0.10 && <0.11,
    text >=2.0 && <2.2,
    time >=1.12 && <1.15,
    webauthn >=0.12 && <0.13,