Awesome Steam 
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
- Node.js
- C#
- PHP
- Go
- Python
- C++
- Java
- Objective-C
- General
- Tutorials
- Posts
- Standalone Tools
- Discussion Boards
- Third-Party Services
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
- steam-trade - Node.js wrapper around Steam live trading.
- steam-tradeoffers - Steam Trade Offers for Node.js.
- steam-tradeoffer-manager - Simple and sane Steam trade offer management.
- steam-inventory-stream - Fetch inventories as readable streams.
- steam-inventory-api-ng - A Steam Inventory API wrapper with advanced features such as retries and proxy support.
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
- steamcommunity - Interact with steamcommunity.com. Also allows to confirm trade offers.
- steamstore - Interact with store.steampowered.com.
- steam-weblogon - Retrieve SteamCommunity cookies if you are running Steam network client.
- steam-web-api-key - Automatically registers and retrieves Steam API key.
- steam-parental - Disable parental lock.
Authentication
- steam-login - Simple Connect / Express Steam authentication library.
- passport-steam - Steam (OpenID) authentication strategy for Passport and Node.js.
- meteor-accounts-steam - Steam OpenID integration for Meteor Accounts.
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.