f1e60eee61e5a13710c46ddf85b3f23061e23538
Add an asyncio.Lock to SocketService to synchronize concurrent access to the users and sockets sets during connection and disconnection, preventing race conditions when multiple websocket connections are established or torn down simultaneously. In the frontend MessageList component, replace anonymous inline event listeners with named handler references stored as instance properties, and implement a disconnectedCallback lifecycle method that removes those event listeners and disconnects the MutationObserver, ensuring proper cleanup when the element is removed from the DOM.
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
Languages
Python
60.6%
HTML
19%
JavaScript
17.1%
CSS
3.2%