Skip to content

flndr/app-com

Repository files navigation

app-com

Node NPM Travis David Coverage Status

Pub Sub Library for Communication in your App

Usage

// FILE APP.JS
import Com from '../src/Com';

const EVENTS = {
    CATCHALL     : '/',
    WILDCARD     : '/some/',
    SPECIFIC_ONE : '/some/event',
    SPECIFIC_TWO : '/some/other/event',
    VARIOUS      : {
        ONE : '/foo/bar',
        TWO : '/bazinga',
    }
};

const COM = new Com();
COM.setSeparator( '/' );
COM.registerEventNames( EVENTS );

export const APP = {
    COM    : COM,
    EVENTS : EVENTS
};

// FILE SOME-MODULE.JS
import APP from './App';
APP.COM.broadcast( APP.EVENTS.SPECIFIC_ONE, { some : 'data' } );

// FILE SOME-OTHER-MODULE.JS
import APP from './App';
let sub = APP.COM.subscribe( APP.EVENTS.SPECIFIC_ONE, function ( data ) {
    console.log( data.some );
} );

sub.start();

Installation

Install via yarn

yarn add app-com (--dev)

or npm

npm install app-com (--save-dev)

configuration

You can pass in extra options as a configuration object (➕ required, ➖ optional, ✏️ default).

import appCom from 'app-com';

property ( type ) ✏️ default
📝 description
❗️ warning
ℹ️ info
💡 example

methods

#name

appCom

Examples

See example folder or the runkit example.

Builds

If you don't use a package manager, you can access app-com via unpkg (CDN), download the source, or point your package manager to the url.

app-com is compiled as a collection of CommonJS modules & [ES2015 modules](http://www.2ality.com/2014/0 -9/es6-modules-final.html) for bundlers that support the jsnext:main or module field in package.json (Rollup, Webpack 2)

The app-com package includes precompiled production and development UMD builds in the dist folder. They can be used directly without a bundler and are thus compatible with many popular JavaScript module loaders and environments. You can drop a UMD build as a <script> tag on your page. The UMD builds make app-com available as a window.appCom global variable.

License

The code is available under the MIT license.

Contributing

We are open to contributions, see CONTRIBUTING.md for more info.

Misc

This module was created using generator-module-boilerplate.

About

Pub Sub Library for Communication in your App

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published