Version Build Dependencies

Wuss is a library that lets you easily create secure WebSocket clients over the WSS protocol.


To add Wuss as a dependency to your package, add it to your Cabal file.

build-depends: wuss ==1.*

For other use cases, install it with Cabal.

$ cabal install 'wuss ==1.*'

Wuss uses Semantic Versioning. See the change log for a detailed list of changes.


import Wuss

import Control.Concurrent (forkIO)
import Control.Monad (forever, unless, void)
import Data.Text (Text, pack)
import Network.WebSockets (ClientApp, receiveData, sendClose, sendTextData)

main :: IO ()
main = runSecureClient "" 443 "/" ws

ws :: ClientApp ()
ws connection = do
    putStrLn "Connected!"

    void . forkIO . forever $ do
        message <- receiveData connection
        print (message :: Text)

    let loop = do
            line <- getLine
            unless (null line) $ do
                sendTextData connection (pack line)

    sendClose connection (pack "Bye!")

For more information about Wuss, please read the Haddock documentation.