retoor 7c65768e8e feat: replace socket list with set and add per-user socket tracking for targeted messaging
- Change `self.sockets` from list to set to prevent duplicate socket entries
- Introduce `self.users` dict mapping user_uid to a set of their active sockets
- Add `send_to_user` method enabling direct message delivery to all sockets of a specific user
- Refactor `broadcast` to iterate over channel members from DB and use `send_to_user` instead of maintaining a separate subscription set
- Temporarily short-circuit `subscribe` method (returns immediately) as subscriptions are now derived from channel membership
- Update cache log to include LRU item count for better debugging visibility
- Rename `room` parameter to `channel_uid` in RPC `send_message` for consistency with service layer
2025-02-15 20:56:26 +00:00

Snek

Slack like chat application with focus on performance

This is a slack like chat application with focus on performance. Other slack-like applications became too heavy. My RocketChat just had an 'frontend' crash. Just an error from the system itself like it's the most normal thing in the world.

Running

At this point, there's nothing officially running but what you can do:

  • Install the project: make install
  • Run part of the project: ./venv/bin/python -m snek.app
  • Run other part of the project: ./venv/bin/python -m snek.models
S
Description
Chat for snek people made by snek people.
Readme
58 MiB
Languages
Python 51.8%
HTML 28%
JavaScript 15.5%
CSS 4.6%