aboutsummaryrefslogtreecommitdiff
path: root/compat/lustre_websocket/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'compat/lustre_websocket/README.md')
-rw-r--r--compat/lustre_websocket/README.md51
1 files changed, 0 insertions, 51 deletions
diff --git a/compat/lustre_websocket/README.md b/compat/lustre_websocket/README.md
deleted file mode 100644
index 5e30c8e..0000000
--- a/compat/lustre_websocket/README.md
+++ /dev/null
@@ -1,51 +0,0 @@
-# lustre_websocket
-
-[![Package Version](https://img.shields.io/hexpm/v/lustre_websocket)](https://hex.pm/packages/lustre_websocket)
-[![Hex Docs](https://img.shields.io/badge/hex-docs-ffaff3)](https://hexdocs.pm/lustre_websocket/)
-
-Use websockets from your `lustre` application!
-
-## Quick start
-
-Add to your Gleam project:
-
-```sh
-gleam add lustre_websocket
-```
-
-Typical usage looks like
-```
-import lustre_websocket as ws
-
-pub type Msg {
- WsWrapper(ws.WebSocketEvent)
-}
-
-let init = #(Model(None), ws.init("/path", WsWrapper))
-```
-and then you pass `init` as first argument to `lustre.application`.
-But you can create a socket at any time, esp. re-create it after it is closed by the server.
-
-The events can be handled like this:
-```
-update(model, msg) {
- case msg {
- WsWrapper(OnOpen(socket)) -> #(Model(..model, ws: Some(socket)), ws.send(socket, "client-init"))
- WsWrapper(OnMessage(msg)) -> todo
- WsWrapper(OnClose(reason)) -> #(Model(..model, ws: None), cmd.none())
- }
-}
-```
-which also demonstrates how you send a text message over the socket.
-
-### Caveat
-
-*This package cannot handle more than 1 socket on a server endpoint*
-
-### TODO:
- * support protocol choice, including one websocket per protocol per endpoint
- * support binary data
- * allow client to close the socket
- * provide errors to the application, when I have a clue on what those might actually be
- * prevent sending over closed sockets
- * maybe auto-reopen sockets that were closed because of Normal