# Trio WebSocket

This library is a WebSocket implementation for the Trio framework that strives for safety, correctness, and ergonomics. It is based on wsproto, which is a Sans-IO state machine that implements most aspects of the WebSocket protocol, including framing, codecs, and events. The respository is hosted on GitHub. This library passes the Autobahn Test Suite.

Contents:

- Getting Started
  - Installation
  - Client Example
  - Server Example
- Clients
  - Client Tutorial
  - Custom Nursery
  - Custom Stream
- Servers
  - Server Tutorial
  - Custom Stream
- Message Queues
- Timeouts
  - Message Timeouts
  - Connection Timeouts
  - Timeouts on Low-level APIs
  - Server Timeouts
- API
  - Requests
  - Connections
  - Utilities
- Recipes
  - Heartbeat
- Contributing
  - Developer Installation
  - Unit Tests
  - Documentation
  - Autobahn Client Tests
  - Autobahn Server Tests
  - Versioning
  - Release Process
- Credits