Skip to content

Add Chanx to Community Projects#2204

Merged
carltongibson merged 1 commit intodjango:mainfrom
huynguyengl99:main
Dec 5, 2025
Merged

Add Chanx to Community Projects#2204
carltongibson merged 1 commit intodjango:mainfrom
huynguyengl99:main

Conversation

@huynguyengl99
Copy link
Contributor

@huynguyengl99 huynguyengl99 commented Dec 5, 2025

Close #2205.

Hi django-channels team!

I'd like to add Chanx to the Community Projects list.

What is Chanx?

Chanx is a batteries-included WebSocket framework built on top of Django Channels that eliminates common pain points in WebSocket development:

Key Features:

  • Decorator-based routing - No more manual if-else chains for message routing
  • Automatic validation - Pydantic models with full type safety (mypy/pyright support)
  • Auto-generated AsyncAPI 3.0 docs - Interactive documentation from code
  • Enhanced testing utilities - Completion signals and simplified WebSocket testing
  • Multi-framework support - Works with Django Channels, FastAPI, and any ASGI framework

What It Extends

Chanx builds on Django Channels' foundation by providing:

  1. Automatic message routing using Pydantic discriminated unions
  2. Type-safe message handling with static type checking support
  3. Comprehensive testing tools with enhanced WebsocketCommunicator
  4. AsyncAPI documentation generation for better API contracts
  5. Event broadcasting utilities to trigger WebSocket messages from anywhere (views, tasks, scripts)

Links

The project has comprehensive documentation, test coverage, and is actively maintained.

Thank you for considering this addition!

Copy link
Member

@carltongibson carltongibson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great. Lovely.

@carltongibson carltongibson merged commit bcc73a9 into django:main Dec 5, 2025
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Chanx to Community Projects List

2 participants