zslsk is a client-server library for the proprietary Soulseek protocol written in Zig.
It uses zio under for efficient asynchronous I/O.
The library is under active development, and many features are currently missing.
- Basic app (in
main.zig) demonstrating use of library with following commands:downloadfilelistmsgsearchuserinfoexit
- Asynchronous library initialization (via
client.run(rt, HOST, PORT, username, password, LISTEN_PORT) - Server message parse/write:
LoginSetWaitPortGetPeerAddressConnectToPeerMessageUserMessageAckedFileSearchRoomListPrivilegedUsersParentMinSpeedParentSpeedRatioWishlistSearchExcludedSearchPhrasesUploadSpeed
- Peer message parse/write:
PeerInitPierceFireWallGetSharedFileListSharedFileListFileSearchResponseGetUserInfoUserInfoTransferRequestTransferResponseQueueUpload
- File message parse/write:
FileTransferInitFileOffset
The current focus of the project is to build out bare minimum functionality, and add more as the project matures. Roadmap coming soon.