Skip to content

M. Client SDK

Jonathan Casarrubias edited this page May 4, 2018 · 2 revisions

alt text

Description

In this section, you will learn how to use the OnixJS Client SDK.

The OnixJS Client SDK is the result of years of experience full of lessons, we understood that creating a SDK coupled to a specific front-end framework is such a bad idea, therefore we designed a pattern in order to create a new SDK that is able to run anywhere.

Now everybody is welcome, Angular? React? Vue? Stencil? RequiereJS? Electron? NativeScript? ReactNative? you name it, use it in any framework you want.

OnixJS Client SDK Example

import { OnixClient, ComponentReference, AppReference} from '@onixjs/sdk';
import { Browser } from '@onixjs/sdk/dist/adapters/browser.adapters';

const sdk: OnixClient = new OnixClient({
    host: 'http://127.0.0.1',
    port: 9000,
    adapters: {
      http: Browser.HTTP,
      websocket: Browser.WebSocket,
      storage: Browser.LocalStorage
    }
});

let componentRef: ComponentReference;

// Initialize the SDK
await this.sdk.init();
// Create an Application Reference
const myApp: AppReference | Error = this.sdk.AppReference('MyApp');
// Verify we got a valid AppReference, else throw the error.
if (myApp instanceof AppReference) {
  // Create Component Reference
  this.componentRef = todoApp.Module('TodoModule').Component('TodoComponent');
  // Create a listTodos stream reference
  componentRef.Method('myStream').stream((data) => {
    console.log(myData);
  });
} else {
  throw myApp;
}

await componentRef.Method('myRPC').call({ text: input.value });

The example above is a general implementation of the OnixJS Client SDK, but we definitely recommend you to spend some time checking out the examples in different front-end frameworks we built for you:

Web

Desktop

Mobile

Clone this wiki locally