Official documentation for Sockudo — a production-ready, drop-in Pusher replacement built in Rust.
Live site → sockudo.io
Sockudo is a high-performance WebSocket server that implements the Pusher protocol. It lets you own your realtime infrastructure with enterprise features like delta compression, tag filtering, and multi-region scaling — while keeping full compatibility with existing Pusher clients and server SDKs.
This repository contains the source for the Sockudo documentation site.
Prerequisites: Bun (or Node.js 22+)
# Clone the repo
git clone https://github.com/sockudo/sockudo-docs.git
cd sockudo-docs
# Install dependencies
bun install
# Start the dev server
bun run devThe site will be running at http://localhost:3000.
sockudo-docs/
├── content/
│ ├── index.md # Homepage
│ ├── 1.getting-started/ # Installation, first connection, auth, migration
│ ├── 2.server/ # Configuration, scaling, security, HTTP API, etc.
│ ├── 3.client/ # @sockudo/client usage, features, runtime targets
│ ├── 4.integrations/ # Laravel Echo, pusher-js, backend SDKs, recipes
│ └── 5.reference/ # Protocol spec, HTTP endpoints, config reference
├── components/
│ └── OgImage/ # Custom Open Graph image components
├── public/ # Static assets (logos, favicons, diagrams)
├── app.config.ts # Docus theme & UI configuration
├── nuxt.config.ts # Nuxt / site configuration
└── netlify.toml # Deployment config
All documentation content lives in content/ as Markdown files. Docus uses the folder numbering prefix (e.g. 1.getting-started) for navigation ordering — the numbers are stripped from the final URLs.
- Pages are written in Markdown with MDC syntax for embedding Vue components.
- Frontmatter at the top of each
.mdfile controls the page title, description, and navigation behavior. - Navigation sections are configured via
.navigation.ymlfiles in each content subdirectory. - Static assets like images and diagrams go in
public/.
bun run buildThe output is generated as a static site (configured via NITRO_PRESET=netlify_static) and deployed to Netlify.
Contributions are welcome! Whether it's fixing a typo, improving an explanation, or adding a new guide:
- Fork this repository
- Create a branch (
git checkout -b fix/typo-in-scaling-docs) - Make your changes in
content/ - Run
bun run devand verify locally - Open a pull request
For larger changes (new sections, restructuring), please open an issue first to discuss.
| Repo | Description |
|---|---|
| sockudo/sockudo | The Sockudo server (Rust) |
| sockudo/sockudo-js | Official JavaScript/TypeScript client (@sockudo/client) |