packages feed

typesafe-ai-0.1.0.0: typesafe-ai.cabal

cabal-version:      3.0
name:               typesafe-ai
version:            0.1.0.0
synopsis:           Client for the TypeSafe AI System One API
description:
  A client for TypeSafe's System One API (<https://docs.typesafe.ai>): send
  text or JSON state with typed Noul (yes/no), Choice and Score questions, and
  get back answers that decode to your own Haskell types.
  .
  Built on @http-client@ with TLS, connection reuse, per-attempt timeouts and
  retries with exponential backoff that honour @Retry-After@.
  .
  The types, JSON codecs and calls are in @typesafe-ai-core@, which has no
  HTTP dependency, so they can also be used with servant or any other HTTP
  stack.
  .
  Start with "TypeSafe" and "TypeSafe.Tutorial".
  .
  This is a community SDK, not affiliated with or endorsed by TypeSafe AI.

homepage:           https://github.com/byteally/typesafe-sdk
bug-reports:        https://github.com/byteally/typesafe-sdk/issues
license:            BSD-3-Clause
license-file:       LICENSE
author:             Magesh B
maintainer:         magesh85@gmail.com
copyright:          2026 byteally
category:           AI, Web, API
build-type:         Simple
tested-with:
  GHC ==9.6.7 || ==9.8.4 || ==9.10.3 || ==9.12.2 || ==9.14.1

extra-doc-files:
  CHANGELOG.md
  README.md

source-repository head
  type:     git
  location: https://github.com/byteally/typesafe-sdk.git
  subdir:   typesafe-ai

common warnings
  ghc-options:
    -Wall -Wcompat -Widentities -Wincomplete-record-updates
    -Wincomplete-uni-patterns -Wmissing-deriving-strategies
    -Wpartial-fields -Wredundant-constraints -Wunused-packages

library
  import:           warnings
  hs-source-dirs:   src
  default-language: Haskell2010
  exposed-modules:
    TypeSafe
    TypeSafe.Client
    TypeSafe.Tutorial

  other-modules:    Paths_typesafe_ai
  autogen-modules:  Paths_typesafe_ai

  -- Depending on typesafe-ai alone gives access to the whole API.
  reexported-modules:
    , TypeSafe.Call
    , TypeSafe.Content
    , TypeSafe.Core
    , TypeSafe.Error
    , TypeSafe.Question
    , TypeSafe.Retry
    , TypeSafe.Wire

  build-depends:
    , base              >=4.18   && <4.23
    , bytestring        >=0.11.3 && <0.13
    , http-client       >=0.7.13 && <0.8
    , http-client-tls   >=0.3.6.2 && <0.5
    , http-types        >=0.12.3 && <0.13
    , random            >=1.2    && <1.4
    , text              >=2.0    && <2.2
    , time              >=1.12   && <1.17
    , typesafe-ai-core  >=0.1.0.0 && <0.1.1

test-suite spec
  import:           warnings
  type:             exitcode-stdio-1.0
  hs-source-dirs:   test
  default-language: Haskell2010
  main-is:          Main.hs
  ghc-options:      -threaded -rtsopts -with-rtsopts=-N
  build-depends:
    , aeson
    , base
    , bytestring
    , http-client
    , http-types
    , tasty         >=1.4 && <1.6
    , tasty-hunit   >=0.10 && <0.11
    , text
    , time
    , typesafe-ai
    , wai           >=3.2 && <3.3
    , warp          >=3.3 && <3.5