game-networking-sockets

Crates.iogame-networking-sockets
lib.rsgame-networking-sockets
version0.1.2
created_at2025-07-04 01:24:30.310606+00
updated_at2025-07-07 01:07:01.467778+00
descriptionRust abstraction for Valve GameNetworkingSockets library.
homepage
repositoryhttps://github.com/hussein-aitlahcen/gns-rs
max_upload_size
id1737343
size89,813
Hussein Ait-Lahcen (hussein-aitlahcen)

documentation

README

Rust abstraction for Valve GameNetworkingSockets

Crates.io Docs

Simple, high-level and (somehow) type-safe wrapper for Valve GameNetworkingSockets.

The library does not require your application to be running with Steam and this wrapper is intended to wrap the open-source version only.

Some features might be missing, if you are interested to introduce more abstraction, feel free to open a PR/Issue.

Libraries:

  • gns-sys is the C++ library from Valve compiled with bindings generated (the library is directly compiled by cargo so you don't need to have it already installed).
  • gns is the high level, type-safe Rust wrapper.

Building

A few system libraries/tools are required in order to compile the C++ library as part of gns-sys.

System libraries required:

  • clang
  • protobuf
  • openssl
  • abseil (if using a recent version of protobuf)

Tools required to be in $PATH:

  • git
  • protobuf-compiler

Windows

Building on Windows uses vcpkg in manifest mode to gather and build dependencies. As such, the only requirement on Windows is to have clang installed and git available in $PATH.

Commit count: 0

cargo fmt