Skip to content

Conversation

@yourarj
Copy link

@yourarj yourarj commented Nov 28, 2025

🪶 Features

  • Protocol: Custom binary protocol over TCP for effciency and throghput avoided json over websockets
  • Least Cloning: efficient broadcasting, optimized for least message cloning regardless of scale
  • Least Serialization effort: O(1) effort for message serialization regardless of amount of receivers with smart caching
  • Resource efficient: Easy on memory and cpu
  • Graceful shutdowns: graceful shutdowns for server and client

🫣 Out of Scope

  • Encryption in transit
  • State machines implemented at protocol levels
  • Message retention & backpressure

Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

- Implemented initial version of binary protocol
- checksum functionality not implemented for the sake of simplicity

 Date:      Sat Nov 22 17:36:12 2025 +0000

 On branch core_protocol
 Changes to be committed:
	new file:   .clippy.toml
	new file:   .editorconfig
	new file:   .rustfmt.toml
	new file:   Cargo.toml
	new file:   chat-core/Cargo.toml
	new file:   chat-core/src/lib.rs
	new file:   chat-core/src/protocol.rs
	new file:   developer-tools/git/hooks/commit-msg
	new file:   developer-tools/git/hooks/pre-commit
	new file:   developer-tools/git/template/.gitmessage
	new file:   rust-toolchain.toml
feat(protocol): implemented binary protocol
COMPLTED: communication successful across clients
PENDING: units, finishing, non published events in some cases

Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Tue Nov 25 03:17:02 2025 +0000

 On branch chat-server
 Changes to be committed:
	new file:   .vscode/settings.json
	modified:   Cargo.toml
	new file:   chat-client/Cargo.toml
	new file:   chat-client/src/client.rs
	new file:   chat-client/src/lib.rs
	new file:   chat-client/src/main.rs
	new file:   chat-core/src/error.rs
	modified:   chat-core/src/lib.rs
	new file:   chat-core/src/transport_layer.rs
	new file:   chat-server/Cargo.toml
	new file:   chat-server/src/broadcast.rs
	new file:   chat-server/src/lib.rs
	new file:   chat-server/src/main.rs
	new file:   chat-server/src/server.rs
User left the chatroom notification fixed

Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>
Client now handles graceful shutdown

Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Tue Nov 25 18:22:57 2025 +0000

 On branch chat-server
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Tue Nov 25 18:49:17 2025 +0000

 On branch chat-server
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Tue Nov 25 20:10:33 2025 +0000

 On branch chat-server
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Wed Nov 26 15:45:48 2025 +0000

 On branch chat-server
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Wed Nov 26 15:57:17 2025 +0000

 On branch main
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Wed Nov 26 16:19:11 2025 +0000

 On branch github-actions
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Wed Nov 26 16:33:27 2025 +0000

 On branch chat-server
 Changes to be committed:
	modified:   .github/workflows/chat-test.yml
	modified:   Cargo.toml
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Wed Nov 26 23:03:52 2025 +0000

 On branch chat-server
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Thu Nov 27 04:10:52 2025 +0000

 On branch chat-server
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>
feat(chat): functional requirements of chat met
	- Added embeded video
	- Added features and outofscope sections

Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>

 Date:      Fri Nov 28 13:00:13 2025 +0000

 On branch demo-video
 Changes to be committed:
	modified:   README.md
	new file:   media/final-demo.mp4

Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>
Signed-off-by: Arjun <11359226+yourarj@users.noreply.github.com>
docs(readme): updated readme
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.

1 participant