steamworksgen

Autogenerated sanitized steamworks Binds

Pure Nim score 15/100 · tests present · no docs generated

Summary

Latest Version 0.1.0
License MIT
CI Status Failing
Downloads 0
Last Indexed 2026-07-21 05:26

Authors

  • prestosilver

Installation

nimble install steamworksgen
choosenim install steamworksgen
git clone https://github.com/bob16795/steamworksgen-nim

OS Compatibility

Platform Linux macOS Windows FreeBSD OpenBSD NetBSD Android iOS WASM Embedded
steamworksgen - - - - - - -

Dependencies

Package Version Optional
nim >= 2.2.0 No

Source

Repository https://github.com/bob16795/steamworksgen-nim
Homepage https://github.com/bob16795/steamworksgen-nim
Registry Source nimble_official

README

steamworksgen

Usage

Use the generateSteamworksAPI(jsonPath: string) proc to read in an export the api calls from steams sdk see the steamworks nimble package for a more general API setup overview.

Differences from the flat API

Callbacks

# The api is init as needed so you dont need to worry about initializing anything

# Interface accessors are wrapped up in simple procs so no need for parenthesis
let userId = steamUser.getSteamID()

# When you call a function that returns a APICallback type, itll return a distinct handle.
# You can then use this handle to add a callback for when the call completes

steamUserStats
  .requestUserStats(userId)
  .onDone do (failed: bool, recieved: ptr UserStatsRecieved) {.stdcall.} =
    discard
    # handle user stats get

# callbacks are handled per frame when you need
steamUtils.runFrame()