Skip to content

scholtzm/vapor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


"Lightweight Steam client framework for node.js"


NPM version Build Status Dependency Status devDependency Status Gitter


About

Vapor is a lightweight Steam client framework for node.js which provides unified API for writing custom extensions. Vapor takes care of the basic stuff such as maintaining connection, logging in and exposes simple API which allows custom plugins to extend its behaviour.

Install

npm install vapor

Usage

var vapor = require('vapor');

var bot = vapor();
bot.init({username: 'myUsername', password: 'myPassword'});
bot.connect();

Client

Vapor provides a very simple automated client. This client uses node-steam to connect to Steam servers.

Vapor provides several key features:

  • handles log in process, including auth codes and sentry files
  • provides API for plugins
  • provides unified logging interface
  • provides a bunch of built-in plugins to make your life easier

Everything else needs to be programmed separately using plugin system.

Plugins

Plugins are self-contained code snippets which extend Vapor's behaviour.

Plugins have:

  • access to active Steam client instance and handlers
  • access to Steam's enums

They can:

  • emit custom events
  • listen to events
  • have their own configuration
  • store data
  • and more ...

Plugins are entirely event driven, there are no hard dependencies. Each plugin can emit an event and any plugin may register a callback for such event. This architecture allows your code to be modular and decoupled.

More information

Visit this repo's Wiki for more information regarding installation, configuration, API, plugins, etc.

Examples are provided in the examples folder.

You can also find auto-generated API docs in the docs folder.

LICENSE

MIT. See LICENSE.