Skip to content

Brinkbit/brinkbit.js

Repository files navigation

Brinkbit

fast, extensible, and scalable BaaS platform for game services, content management, live ops, and more

This is the client-side javascript SDK for the Brinkbit Game BaaS. This repository includes installation instructions and basic examples. For full API documentation see https://brinkbit.com/docs/.

Contents

Installation

Via npm

$ npm init
$ npm install --save brinkbit.js

Via yarn

$ yarn init
$ yarn add brinkbit.js

Via cdn

Include the following script tag in your html:

<script crossorigin src="https://unpkg.com/brinkbit.js/dist/brinkbit.min.js"></script>

Examples

Import

CommonJS

const Brinkbit = require( 'brinkbit.js' );

ES6

import Brinkbit from 'brinkbit.js';

Initialize

// create a new Brinkbit instance
const brinkbit = new Brinkbit({
    gameId: 'xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx', // your unique game id (can be retrieved from brinkbit control center)
});
// create a new Brinkbit instance using custom proxy
const brinkbit = new Brinkbit({
    base: 'https://yourproxydomain.com/api/', // the route of your application on which the server-side sdk is listening
    gameId: 'xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx', // your unique game id (can be retrieved from brinkbit control center)
});

Create a New Player

// create a new player
const player = new brinkbit.Player({
    username: 'Violet',
    email: '[email protected]',
    password: 'FireballsAreTheWorst',
});
player.save()
.then(() => {
    // player has been created on server
});

Login

brinkbit.on( 'login', ( event ) => {
    console.log( event.player );
});

// login a player
brinkbit.login({
    username: 'Violet', // can also be email
    password: 'FireballsAreTheWorst',
})
.then(( player ) => {
    // player is an authenticated player object
    // You can also access the primary player via Brinkbit.Player.primary
    console.log( player.id === Brinkbit.Player.primary.id );
});

Check if Logged In

if ( brinkbit.loggedIn()) {
    console.log( 'player is logged in' );
}
else {
    console.log( 'player is not logged in' );
}

Logout

brinkbit.logout();
// player is logged out

// alternative
player.logout();

Low Level Requests

brinkbit.get( '/players/12345/' )
.then(( response ) => {
    console.log( response );
});
brinkbit.put({
    uri: '/players/12345/',
    data: {
        email: '[email protected]',
    },
});

Links

Github Facebook Twitter LinkedIn Google Plus Medium