Wynd
A simple, fast, and developer-friendly WebSocket library for Rust.
Features
- 🚀 Simple API: Easy-to-use event-driven API with async/await support
- ⚡ High Performance: Built on Tokio for excellent async performance
- 🛡️ Type Safety: Strongly typed message events and error handling
- 🧩 Middleware Support: Plug in async middleware for authentication, logging, rate-limiting, and more
- 🔧 Developer Experience: Comprehensive documentation and examples
- 🔄 Connection Management: Automatic connection lifecycle management
- 📡 Real-time Ready: Perfect for chat apps, games, and live dashboards
- 🌐 HTTP Integration: Optional ripress integration for combined HTTP + WebSocket servers
Getting Started
The easiest way to get started is with the HexStack CLI.
HexStack is a project scaffolding tool (similar to create-t3-app) that lets you spin up new Rust web projects in seconds. With just a few selections, you can choose:
Backend: Wynd, Ripress, or both
Frontend: React, Svelte, or none
Extras: Out-of-the-box WebSocket + HTTP support, and full middleware capability (authentication, logging, etc.)
This means you can quickly bootstrap a real-time full-stack project (Rust backend + modern frontend) or just a backend-only Wynd project.
To create a new project with Wynd:
Create a simple echo server:
use ;
async
Middleware
Wynd supports asynchronous middleware, making it easy to add authentication, logging, rate-limiting, and other cross-cutting concerns. Middleware functions run for every new connection before your event handlers.
Example: Reject unauthenticated users and log connections
wynd.use_middleware;
HTTP + WebSocket Integration
Enable the with-ripress feature to serve both HTTP and WebSocket on the same port:
use ;
use ;
async
Documentation
- Getting Started:
docs/getting-started.md - API Reference:
docs/api-reference/ - Examples:
docs/example/ - Tutorial:
docs/tutorial/ - Guides:
docs/guides/
Performance
- Async by Design: Full async/await support with Tokio runtime
- Concurrent Connections: Each connection runs in its own task
- Efficient Message Handling: Minimal overhead for message processing
- Zero-Cost Middleware: Add as many middleware as you like with minimal overhead
Contributing
We welcome contributions! Please see our Contributing Guide for details.
License
This project is licensed under the MIT License - see the LICENSE file for details. Wynd v0.11.1 - Production Ready ✨