# js-message Normalized JS & JSON Message and event Protocol for node.js, vanilla.js (plain old javascript), react.js, websockets, rest api's, node-ipc, and any other protocol that might use a js object and or a JSON string. js-message allows for seamless conversion of JSON messages and events to JS objects for a normalized implementation on the server and in the client without needing to concern yourself with JSON intermediaries and custom parsers. Things are just easier when you normalize them. npm js-message info : [See npm trends and stats for js-message](http://npm-stat.com/charts.html?package=js-message&author=&from=&to=)      ` npm install --save js-message ` [](https://github.com/RIAEvangelist) GitHub info : [  ](http://riaevangelist.github.io/js-message/) [js-message site](http://riaevangelist.github.io/js-message/) |method or key |type |mutable|description| |---------------|-------|-------|-----------| |type |String |true |the type of message| |data |Object |true |the message data or payload| |load |func |false |load a message from JSON, this will return a message with the type of error if not valid JSON| |JSON |String |not by user|JSON representation of the message| ### Creating a Message Object ```javascript //commonjs var Message=require('js-message'); //plain old javascript <script src='js-message-vanilla.js' /> var myMessage=new Message; myMessage.type='message or event type'; myMessage.data.something='something'; myMessage.data.stuff=[1,2,3,4,5] console.log(myMessage.JSON); ``` ### Creating a Message From JSON ```javascript //commonjs var Message=require('js-message'); //plain old javascript <script src='js-message-vanilla.js' /> //lets say we have the above example running on //a websocket server sending js-messages as JSON // //and lets say this is the client in the browser ws.on( 'message', handleMessage ); handleMessage(e){ var message=new Message; message.load(e.data); console.log(message.type, message.data); } ``` ### Sending a Message Object via WebSocket ```javascript //commonjs var Message=require('js-message'); //plain old javascript <script src='js-message-vanilla.js' /> //client example, but works the same on server too! var ws=new WebSocket('ws://myawesomeWS:8000'); var myMessage=new Message; myMessage.type='setUsername'; myMessage.data.username='sideshow bob'; ws.send(myMessage.JSON); ``` --- This work is licenced via the [DBAD Public Licence](http://www.dbad-license.org/).