😎 A curated list of packages and resources regarding Steam development
Switch branches/tags
Nothing to show
Clone or download
OmG3r and scholtzm Added a Ruby library (#19)
* Added Ruby section and added first Ruby package
Latest commit a370589 Apr 24, 2018
Permalink
Failed to load latest commit information.
.editorconfig initial commit May 25, 2016
.gitattributes initial commit May 25, 2016
CONTRIBUTING.md initial commit May 25, 2016
README.md Added a Ruby library (#19) Apr 24, 2018

README.md

Awesome Steam Awesome

A curated list of packages and resources regarding Steam development.

Please read the contribution guidelines before contributing.

The purpose of this document is to provide a quick overview over existing packages (libraries, modules etc.) and resources available regarding Steam client automation and WebAPI usage. Whenever you need to start a new project, have a look at the list of packages and see if there is anything useful for your use case. If you need technical details or tutorials, check out the resources section.

Table of Contents

Packages

πŸ’‘ Many of these package repositories provide helpful READMEs and wiki pages, which explain the usage and/or provide examples. Do not forget to check them out when using particular package.

Node.js

General

  • steam - Interface directly with Steam servers from Node.js.
  • steam-client - API-compatible fork of node-steam's SteamClient.
  • steam-user - Feature-rich easy-to-use Steam client.
  • vapor - Lightweight Steam client framework.
  • steam-parentbot - Simple base class for a Steam bot.

WebAPI

  • steam-webapi - Complete WebAPI wrapper with support for extra HTTP headers sent by Steam.
  • steamapi - A nice Steam API wrapper.

Trading

Game Interaction

  • steam-gameserver - Steam client handler for Gameserver and AnonGameserver account types.
  • tf2 - Interact directly with TF2 game coordinator.
  • csgo - Interact directly with CS:GO game coordinator.
  • dota2 - Interact directly with Dota 2 game coordinator.

Community & Store Automation

Authentication

Misc

  • steam-resources - Steam's enums, protobufs and structs.
  • steam-crypto - Node.js implementation of Steam crypto.
  • steam-groups - Custom node-steam handler which provides group functions.
  • steamid - SteamID usage and conversion made easy.
  • steam-totp - Easily generate 2FA codes used by Steam.
  • steam-chat-bot - Simplified interface for a steam chat bot.
  • vdf - vdf to object and vice versa.
  • steamrep - Check user's SteamRep reputation.
  • reptf - Check user's rep.tf reputation.

C#

General

  • SteamKit2 - .NET library designed to interoperate with Valve's Steam network.
  • SteamAuth - A C# library that provides vital Steam Mobile Authenticator functionality.
  • SteamBot - Automated bot software for interacting with steam trade.
  • SteamTradeOffersBot - SteamBot fork which focuses on trade offers.
  • SteamStandardProject - A collection of .NET Standard libraries using common types that provide functionality in one or more parts of Steam.

Misc

PHP

  • SteamCommunity - A PHP library for interacting with the Steam Community website.
  • SteamAuthentication - Steam OpenID authentication with PHP.
  • SteamAuthOOP - An object-oriented alternative to SteamAuthentication.
  • steam-api - A PHP wrapper for the Steam API.
  • steamid - SteamID class for PHP.
  • steam-totp - PHP library to deal with Steam's proprietary TOTP algorithm.
  • steam-auth - An alternative Steam authentication library with Composer support.

Go

Python

General

  • steam - Module for various interactions with Steam.
  • PySteamKit - Python port of SteamKit.
  • steamodd - Steam tools library.
  • steampy - Fully automated Steam trade offers library with SteamGuard support.
  • SteamAPI - An object-oriented Python 2.7+ library for accessing the Steam Web API.
  • Steam-Trade - An asynchronous, event-based trade library.

Game Interaction

  • csgo - Python module for interacting with CSGO's Game Coordinator.
  • dota2 - Python module for interacting with Dota 2's Game Coordinator.

Misc

  • vpk - Python module for working with Valve's Pack format.
  • vdf - Python module for working with Valve's KeyValue format.

C++

  • SteamPP - C++ library to interoperate with Steam servers.

Java

Objective-C

  • SteamAuth - An iOS wrapper around Steam's OpenID login.

Ruby

Resources

General

Tutorials

Posts

Standalone Tools

Discussion Boards

Third-Party Services

Websites listed below may provide free and/or paid services and are listed alphabetically according to their domain name.

  • backpack.tf - Provides TF2 prices and Steam market/inventory related services.
  • steamanalyst.com - Provides CS:GO prices.
  • steamapi.io - Provides prices for several games and Steam market/inventory related services.
  • steamapis.com - Provides prices for several games and Steam market/inventory related services.
  • steamlytics.xyz - Provides CS:GO prices and Steam market/inventory related services.

License

CC0

To the extent possible under law, the author and contributors of this text have waived all copyright and related or neighboring rights to this work.