firebase-hs-0.3.0.0: firebase-hs.cabal
cabal-version: 3.0
name: firebase-hs
version: 0.3.0.0
synopsis: Firebase Auth, Firestore, and Servant integration for Haskell
description:
Firebase Authentication (JWT verification), Firestore REST API client
(CRUD, queries, transactions), and optional WAI middleware and Servant
auth combinator. Verify ID tokens against Google's public keys, read and
write Firestore documents, and protect any Haskell web server with Firebase
auth, all from pure, composable Haskell.
license: BSD-3-Clause
license-file: LICENSE
copyright: 2026 Gondola Bros Entertainment
author: Devon Tomlin
maintainer: devon.tomlin@novavero.ai
homepage: https://github.com/Gondola-Bros-Entertainment/firebase-hs
bug-reports: https://github.com/Gondola-Bros-Entertainment/firebase-hs/issues
category: Web, Authentication, Database
stability: experimental
build-type: Simple
tested-with: GHC ==9.6.* || ==9.8.* || ==9.10.* || ==9.12.*
extra-doc-files:
CHANGELOG.md
README.md
flag wai
description: Enable WAI auth middleware (Firebase.Auth.WAI)
default: False
manual: True
flag servant
description: Enable Servant auth combinator (Firebase.Servant)
default: False
manual: True
common warnings
ghc-options:
-Wall
-Wcompat
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-Wredundant-constraints
common extensions
default-language: Haskell2010
default-extensions:
LambdaCase
OverloadedStrings
StrictData
TupleSections
library
import: warnings, extensions
exposed-modules:
Firebase.Auth
Firebase.Auth.Internal
Firebase.Auth.Types
Firebase.Firestore
Firebase.Firestore.Internal
Firebase.Firestore.Query
Firebase.Firestore.Types
build-depends:
base >= 4.18 && < 5
, aeson >= 2.0 && < 2.4
, base64-bytestring >= 1.2 && < 1.3
, bytestring >= 0.11 && < 0.13
, containers >= 0.6 && < 0.9
, crypton >= 0.31 && < 2
, http-client >= 0.7.13 && < 0.8
, http-client-tls >= 0.3 && < 0.5
, http-types >= 0.12 && < 0.13
, text >= 1.2 && < 2.2
, time >= 1.12 && < 1.17
, transformers >= 0.5 && < 0.7
if flag(wai)
exposed-modules: Firebase.Auth.WAI
build-depends:
vault >= 0.3 && < 0.4
, wai >= 3.2 && < 3.3
if flag(servant)
exposed-modules: Firebase.Servant
build-depends:
servant-server >= 0.19 && < 0.21
, wai >= 3.2 && < 3.3
hs-source-dirs: src
test-suite firebase-hs-test
import: warnings, extensions
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs: test
build-depends:
base >= 4.18 && < 5
, aeson >= 2.0 && < 2.4
, bytestring >= 0.11 && < 0.13
, containers >= 0.6 && < 0.9
, firebase-hs
, http-client >= 0.7.13 && < 0.8
, http-types >= 0.12 && < 0.13
, text >= 1.2 && < 2.2
, time >= 1.12 && < 1.17
source-repository head
type: git
location: https://github.com/Gondola-Bros-Entertainment/firebase-hs
branch: main