https://github.com/nfibrokerage/slipstream
A slick WebSocket client for Phoenix Channels
https://github.com/nfibrokerage/slipstream
phoenix phoenix-channels websocket
Last synced: 26 days ago
JSON representation
A slick WebSocket client for Phoenix Channels
- Host: GitHub
- URL: https://github.com/nfibrokerage/slipstream
- Owner: NFIBrokerage
- License: apache-2.0
- Created: 2021-01-22T21:47:50.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2025-02-04T17:42:15.000Z (3 months ago)
- Last Synced: 2025-04-02T22:35:16.275Z (about 1 month ago)
- Topics: phoenix, phoenix-channels, websocket
- Language: Elixir
- Homepage: https://hex.pm/packages/slipstream
- Size: 473 KB
- Stars: 169
- Watchers: 12
- Forks: 19
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Slipstream

[](https://coveralls.io/github/NFIBrokerage/slipstream)
[](https://hex.pm/packages/slipstream)
[](https://github.com/NFIBrokerage/slipstream/blob/main/LICENSE)
[](https://github.com/NFIBrokerage/slipstream/commits/main)A slick websocket client for Phoenix channels
See the [online documentation](https://hexdocs.pm/slipstream)
## Main Features
- backed by [Mint.WebSocket](https://github.com/NFIBrokerage/mint_web_socket)
- an `await_*` interface for a interacting [synchronously](https://hexdocs.pm/slipstream/Slipstream.html#module-synchronicity)
- built-in [re-connect and re-join mechanisms](https://hexdocs.pm/slipstream/Slipstream.html#module-retry-mechanisms) matching `phoenix.js`
- a [testing framework](https://hexdocs.pm/slipstream/Slipstream.SocketTest.html#content) for clients
- emits [`:telemetry` events](https://hexdocs.pm/slipstream/telemetry.html#content)## Installation
Add slipstream to your dependencies in `mix.exs`:
```elixir
def deps do
[
{:slipstream, "~> 1.0"}
]
end
```## Documentation
Documentation is automatically published to
[hexdocs.pm](https://hexdocs.pm/slipstream) on release. You may build the
documentation locally with```
MIX_ENV=docs mix docs
```## Contributing
Issues and PRs are very welcome! See our organization
[`CONTRIBUTING.md`](https://github.com/NFIBrokerage/.github/blob/main/CONTRIBUTING.md)
for more information about best-practices and passing CI.If you're considering sending a PR or otherwise forking Slipstream, you may
wish to read [the implementation docs](guides/implementation.md) first.