{"slug": "scholtzm--awesome-steam", "title": "Steam", "description": "\ud83d\ude0e A curated list of packages and resources regarding Steam development", "github_url": "https://github.com/scholtzm/awesome-steam", "stars": "558", "tag": "Miscellaneous", "entry_count": 99, "subcategory_count": 17, "subcategories": [{"name": "Table of Contents", "parent": "", "entries": [{"name": "Packages", "url": "#packages", "description": ""}, {"name": "Resources", "url": "#resources", "description": ""}]}, {"name": "Node.js", "parent": "Packages", "entries": [{"name": "steam", "url": "https://github.com/seishun/node-steam", "description": "Interface directly with Steam servers from Node.js.", "stars": "1k"}, {"name": "steam-client", "url": "https://github.com/DoctorMcKay/node-steam-client", "description": "API-compatible fork of node-steam's SteamClient.", "stars": "55"}, {"name": "steam-user", "url": "https://github.com/DoctorMcKay/node-steam-user", "description": "Feature-rich easy-to-use Steam client.", "stars": "1.1k"}, {"name": "vapor", "url": "https://github.com/scholtzm/vapor", "description": "Lightweight Steam client framework.", "stars": "111"}, {"name": "steam-parentbot", "url": "https://github.com/dragonbanshee/node-steam-parentbot", "description": "Simple base class for a Steam bot.", "stars": "33"}, {"name": "steamworks-ffi-node", "url": "https://github.com/ArtyProf/steamworks-ffi-node", "description": "A Node.js wrapper for Steamworks SDK.", "stars": "50"}, {"name": "steam-webapi", "url": "https://github.com/DoctorMcKay/node-steam-webapi", "description": "Complete WebAPI wrapper with support for extra HTTP headers sent by Steam.", "stars": "17"}, {"name": "steamapi", "url": "https://github.com/lloti/node-steamapi", "description": "A nice Steam API wrapper.", "stars": "195"}, {"name": "steam-trade", "url": "https://github.com/seishun/node-steam-trade", "description": "Node.js wrapper around Steam live trading.", "stars": "162"}, {"name": "steam-tradeoffers", "url": "https://github.com/Alex7Kom/node-steam-tradeoffers", "description": "Steam Trade Offers for Node.js.", "stars": "291"}, {"name": "steam-tradeoffer-manager", "url": "https://github.com/DoctorMcKay/node-steam-tradeoffer-manager", "description": "Simple and sane Steam trade offer management.", "stars": "595"}, {"name": "steam-inventory-stream", "url": "https://github.com/timvandam/steam-inventory-stream", "description": "Fetch inventories as readable streams.", "stars": "8"}, {"name": "steam-inventory-api-ng", "url": "https://github.com/itsjfx/node-steam-inventory-api-ng", "description": "A Steam Inventory API wrapper with advanced features such as retries and proxy support.", "stars": "5"}, {"name": "steam-gameserver", "url": "https://github.com/DoctorMcKay/node-steam-gameserver", "description": "Steam client handler for Gameserver and AnonGameserver account types.", "stars": "19"}, {"name": "tf2", "url": "https://github.com/DoctorMcKay/node-tf2", "description": "Interact directly with TF2 game coordinator.", "stars": "62"}, {"name": "csgo", "url": "https://github.com/joshuaferrara/node-csgo", "description": "Interact directly with CS:GO game coordinator.", "stars": "468"}, {"name": "dota2", "url": "https://github.com/RJacksonm1/node-dota2", "description": "Interact directly with Dota 2 game coordinator.", "stars": "553"}, {"name": "steamcommunity", "url": "https://github.com/DoctorMcKay/node-steamcommunity", "description": "Interact with steamcommunity.com. Also allows to confirm trade offers.", "stars": "548"}, {"name": "steamstore", "url": "https://github.com/DoctorMcKay/node-steamstore", "description": "Interact with store.steampowered.com.", "stars": "70"}, {"name": "steam-weblogon", "url": "https://github.com/Alex7Kom/node-steam-weblogon", "description": "Retrieve SteamCommunity cookies if you are running Steam network client.", "stars": "28"}, {"name": "steam-web-api-key", "url": "https://github.com/Alex7Kom/node-steam-web-api-key", "description": "Automatically registers and retrieves Steam API key.", "stars": "21"}, {"name": "steam-parental", "url": "https://github.com/Alex7Kom/node-steam-parental", "description": "Disable parental lock.", "stars": "4"}, {"name": "steam-login", "url": "https://github.com/cpancake/steam-login", "description": "Simple Connect / Express Steam authentication library.", "stars": "64"}, {"name": "passport-steam", "url": "https://github.com/liamcurry/passport-steam", "description": "Steam (OpenID) authentication strategy for Passport and Node.js.", "stars": "358"}, {"name": "meteor-accounts-steam", "url": "https://github.com/scholtzm/meteor-accounts-steam", "description": "Steam OpenID integration for Meteor Accounts.", "stars": "17"}, {"name": "steam-resources", "url": "https://github.com/seishun/node-steam-resources", "description": "Steam's enums, protobufs and structs.", "stars": "24"}, {"name": "steam-crypto", "url": "https://github.com/seishun/node-steam-crypto", "description": "Node.js implementation of Steam crypto.", "stars": "15"}, {"name": "steam-groups", "url": "https://github.com/scholtzm/node-steam-groups", "description": "Custom node-steam handler which provides group functions.", "stars": "15"}, {"name": "steamid", "url": "https://github.com/DoctorMcKay/node-steamid", "description": "SteamID usage and conversion made easy.", "stars": "71"}, {"name": "steam-totp", "url": "https://github.com/DoctorMcKay/node-steam-totp", "description": "Easily generate 2FA codes used by Steam.", "stars": "256"}, {"name": "steam-chat-bot", "url": "https://github.com/Steam-Chat-Bot/node-steam-chat-bot", "description": "Simplified interface for a steam chat bot.", "stars": "106"}, {"name": "vdf", "url": "https://github.com/RJacksonm1/node-vdf", "description": "vdf to object and vice versa.", "stars": "21"}, {"name": "steamrep", "url": "https://github.com/scholtzm/node-steamrep", "description": "Check user's SteamRep reputation.", "stars": "10"}, {"name": "reptf", "url": "https://github.com/scholtzm/node-reptf", "description": "Check user's rep.tf reputation.", "stars": "2"}, {"name": "steamapis", "url": "https://github.com/itsjfx/node-steamapis", "description": "Module to use the API of [steamapis.com](https://steamapis.com).", "stars": "11"}]}, {"name": "C\\#", "parent": "Packages", "entries": [{"name": "SteamKit2", "url": "https://github.com/SteamRE/SteamKit", "description": ".NET library designed to interoperate with Valve's Steam network.", "stars": "3k"}, {"name": "SteamAuth", "url": "https://github.com/geel9/SteamAuth", "description": "A C# library that provides vital Steam Mobile Authenticator functionality.", "stars": "312"}, {"name": "SteamBot", "url": "https://github.com/Jessecar96/SteamBot", "description": "Automated bot software for interacting with steam trade.", "stars": "1.4k"}, {"name": "SteamTradeOffersBot", "url": "https://github.com/waylaidwanderer/SteamTradeOffersBot", "description": "SteamBot fork which focuses on trade offers.", "stars": "50"}, {"name": "SteamStandardProject", "url": "https://github.com/ObsidianMinor/SteamStandardProject", "description": "A collection of .NET Standard libraries using common types that provide functionality in one or more parts of Steam.", "stars": "3"}, {"name": "BackpackLogin", "url": "https://github.com/igeligel/BackpackLogin", "description": "A .NET Standard library for logging into backpack.tf using Steam credentials.", "stars": "7"}, {"name": "TeamFortressOutpostApi", "url": "https://github.com/igeligel/TeamFortressOutpostApi", "description": "A .NET Standard class library which allows user to interact with TF2Outpost.", "stars": "3"}]}, {"name": "PHP", "parent": "Packages", "entries": [{"name": "SteamCommunity", "url": "https://github.com/waylaidwanderer/PHP-SteamCommunity", "description": "A PHP library for interacting with the Steam Community website.", "stars": "79"}, {"name": "SteamAuthentication", "url": "https://github.com/SmItH197/SteamAuthentication", "description": "Steam OpenID authentication with PHP.", "stars": "445"}, {"name": "SteamAuthOOP", "url": "https://github.com/BlackCetha/SteamAuthOOP", "description": "An object-oriented alternative to SteamAuthentication.", "stars": "40"}, {"name": "steam-api", "url": "https://github.com/DaMitchell/steam-api-php", "description": "A PHP wrapper for the Steam API.", "stars": "80"}, {"name": "steamid", "url": "https://github.com/DoctorMcKay/php-steamid", "description": "SteamID class for PHP.", "stars": "11"}, {"name": "steam-totp", "url": "https://github.com/DoctorMcKay/php-steam-totp", "description": "PHP library to deal with Steam's proprietary TOTP algorithm.", "stars": "22"}, {"name": "steam-auth", "url": "https://github.com/vikas5914/steam-auth", "description": "An alternative Steam authentication library with Composer support.", "stars": "19"}]}, {"name": "Go", "parent": "Packages", "entries": [{"name": "steam", "url": "https://github.com/0xAozora/steam", "description": "Simple steam library for trading in Go.", "stars": "20"}, {"name": "go-steam", "url": "https://github.com/Philipp15b/go-steam", "description": "Steam's protocol in Go.", "stars": "424"}, {"name": "steam-mobileauth", "url": "https://github.com/YellowOrWhite/go-steam-mobileauth", "description": "Port of SteamAuth in Go.", "stars": "19"}]}, {"name": "Python", "parent": "Packages", "entries": [{"name": "steam", "url": "https://github.com/ValvePython/steam", "description": "Module for various interactions with Steam.", "stars": "1.3k"}, {"name": "steamodd", "url": "https://github.com/Lagg/steamodd", "description": "Steam tools library.", "stars": "80"}, {"name": "steampy", "url": "https://github.com/bukson/steampy", "description": "Fully automated Steam trade offers library with SteamGuard support.", "stars": "666"}, {"name": "SteamAPI", "url": "https://github.com/smiley/steamapi", "description": "An object-oriented Python 2.7+ library for accessing the Steam Web API.", "stars": "464"}, {"name": "Steam-Trade", "url": "https://github.com/Zwork101/steam-trade", "description": "An asynchronous, event-based trade library.", "stars": "19"}, {"name": "aiosteampy", "url": "https://github.com/somespecialone/aiosteampy", "description": "Trade and interact with Steam market, WebAPI, SteamGuard.", "stars": "84"}, {"name": "csgo", "url": "https://github.com/ValvePython/csgo", "description": "Python module for interacting with CSGO's Game Coordinator.", "stars": "131"}, {"name": "dota2", "url": "https://github.com/ValvePython/dota2", "description": "Python module for interacting with Dota 2's Game Coordinator.", "stars": "219"}, {"name": "vpk", "url": "https://github.com/ValvePython/vpk", "description": "Python module for working with Valve's Pack format.", "stars": "184"}, {"name": "vdf", "url": "https://github.com/ValvePython/vdf", "description": "Python module for working with Valve's KeyValue format.", "stars": "205"}]}, {"name": "C++", "parent": "Packages", "entries": [{"name": "SteamPP", "url": "https://github.com/seishun/SteamPP", "description": "C++ library to interoperate with Steam servers.", "stars": "117"}]}, {"name": "Java", "parent": "Packages", "entries": [{"name": "SteamKit-Java", "url": "https://github.com/Top-Cat/SteamKit-Java", "description": "Java port of SteamKit.", "stars": "50"}, {"name": "JavaSteam", "url": "https://github.com/Longi94/JavaSteam", "description": "Java library that provides an interface to directly interact with Valve's Steam servers.", "stars": "135"}]}, {"name": "Objective-C", "parent": "Packages", "entries": [{"name": "SteamAuth", "url": "https://github.com/michaelchum/SteamAuth", "description": "An iOS wrapper around Steam's OpenID login.", "stars": "6"}]}, {"name": "Ruby", "parent": "Packages", "entries": [{"name": "steam-trade", "url": "https://github.com/OmG3r/steam-trade", "description": "Ruby gem for sending trade offers.", "stars": "10"}]}, {"name": "Rust", "parent": "Packages", "entries": [{"name": "steamguard-cli", "url": "https://github.com/dyc3/steamguard-cli", "description": "Command-line utility for generating Steam 2FA codes and managing Steam confirmations.", "stars": "936"}]}, {"name": "General", "parent": "Resources", "entries": [{"name": "Steam WebAPI @ ValveSoftware", "url": "https://developer.valvesoftware.com/wiki/Steam_Web_API", "description": ""}, {"name": "Steam WebAPI @ TF2 Wiki", "url": "https://wiki.teamfortress.com/wiki/WebAPI", "description": ""}, {"name": "Steam WebAPI Documentation by xPaw", "url": "https://lab.xpaw.me/steam_api_documentation.html", "description": ""}, {"name": "Steam Internal WebAPI Documentation by Revadike", "url": "https://github.com/Revadike/UnofficialSteamWebAPI", "description": "", "stars": "610"}, {"name": "Steam as OpenID Provider", "url": "http://steamcommunity.com/dev", "description": ""}, {"name": "Steam API Key Registration", "url": "http://steamcommunity.com/dev/apikey", "description": ""}, {"name": "Steam Error Codes", "url": "https://steamerrors.com/", "description": "List of `EResult` codes with possible explanations."}]}, {"name": "Tutorials", "parent": "Resources", "entries": [{"name": "Creating a Steam Trade Bot with Node.js", "url": "https://firepowered.org/developer/create-a-steam-trade-bot-with-nodejs-iojs-updated-for-node-steam-v1-0/", "description": ""}, {"name": "Charred's node.js Guide to Steam Bots", "url": "https://github.com/charredgrass/nodejs-bot-guide", "description": "", "stars": "47"}, {"name": "In-depth Steam Bot Guide with Node.js", "url": "https://github.com/andrewda/node-steam-guide", "description": "", "stars": "716"}, {"name": "Retrieving 2FA Keys from iOS Device", "url": "http://forums.backpack.tf/index.php?/topic/45995-guide-how-to-get-your-shared-secret-from-ios-device-steam-mobile/", "description": ""}]}, {"name": "Posts", "parent": "Resources", "entries": [{"name": "Item IDs Explained", "url": "https://dev.doctormckay.com/topic/332-identifying-steam-items/", "description": ""}, {"name": "Everything Related to Escrow", "url": "https://www.reddit.com/r/SteamBot/comments/3udhkd/everything_related_to_escrow/", "description": ""}, {"name": "Understanding Avatar Hash", "url": "https://www.reddit.com/r/SteamBot/comments/3cv6k7/problem_downloading_an_avatar_using/", "description": ""}]}, {"name": "Standalone Tools", "parent": "Resources", "entries": [{"name": "NetHook2", "url": "https://github.com/SteamRE/SteamKit/tree/master/Resources/NetHook2", "description": "Intercept Steam client's network messages.", "stars": "3k"}, {"name": "NetHook2 Analyzer", "url": "https://github.com/SteamRE/SteamKit/tree/master/Resources/NetHookAnalyzer2", "description": "Inspect messages dumped by NetHook2.", "stars": "3k"}, {"name": "steam-auth-web-util", "url": "http://scholtzm.github.io/steam-auth-web-util/", "description": "Generate 2FA codes directly in your web browser."}, {"name": "SteamDesktopAuthenticator", "url": "https://github.com/Jessecar96/SteamDesktopAuthenticator", "description": "Desktop implementation of Steam's mobile authenticator app.", "stars": "3.7k"}, {"name": "protonenv", "url": "https://github.com/rizkiarm/protonenv", "description": "Simple Proton version and prefix management.", "stars": "4"}, {"name": "steam-desktop-authenticator-multiplatform", "url": "https://github.com/tre3p/steam-desktop-authenticator-multiplatform", "description": "Steam desktop authenticator.", "stars": "9"}]}, {"name": "Discussion Boards", "parent": "Resources", "entries": [{"name": "/r/SteamBot", "url": "https://www.reddit.com/r/SteamBot", "description": ""}, {"name": "/r/SteamBot Discord", "url": "https://discord.gg/0i5X3oDHJbDUsiGC", "description": ""}, {"name": "/r/nodesteam", "url": "https://www.reddit.com/r/nodesteam", "description": ""}, {"name": "DoctorMcKay's Dev Forum", "url": "https://dev.doctormckay.com/", "description": ""}, {"name": "node-steam-forum", "url": "https://github.com/steam-forward/node-steam-forum", "description": "", "stars": "43"}]}, {"name": "Third-Party Services", "parent": "Resources", "entries": [{"name": "backpack.tf", "url": "https://backpack.tf/developer", "description": "Provides TF2 prices and Steam market/inventory related services."}, {"name": "steamanalyst.com", "url": "https://steamanalyst.com/", "description": "Provides CS:GO prices."}, {"name": "hexa.one", "url": "https://hexa.one/", "description": "Provides prices for several games and Steam market/inventory related services."}, {"name": "steamapis.com", "url": "https://steamapis.com/", "description": "Provides prices for several games and Steam market/inventory related services."}]}], "name": ""}