Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Build status Build status

This node pack defines a new Message data link and c# type. Its initial purpose was to help you retain data and performance control if your vvvv project turns bigger than expected, without adding redundant and confusing links. Still truthful to that initialisation, it now strives to be the best multipurpose data plumbing tool to ever enter your workflow.

Message can help to communicate between threads, applications or even other devices.

Structure & Access

Think of Message as a collection of (binsizeable) Spreads of various Types (bool, int, float, double, string, Transform, Color, Vectors**, Time, Message**), all into one single object. It also provides access to the dx11 types Layer, Geometry, Texture2d, Buffer.

You can create these Message objects with fully spreadable Create (Message Formular) and access the individual Spreads with Split (Message Formular), Read (Message) or simply Info (Message).

It comes with a broad range of handy helper nodes to work with it:

  • Sift (Message), Sort (Message Formularand search the Messages you are interested in
  • handle Message spreads with ease: GetSlice (Message), Select (Message), et al. at your service
  • micromanage Messages' Fields: Prune, Topic (Message) and RenameField (Message)
  • handle edge cases explicitly with Change (Message)and Clone (Message)

Furthermore it ships with convenience plugins for persisting Messages to disc or serializing over network

  • Json: AsString (Message Json), FromString (Message Json)
  • MsgPack: AsMsgPack (Message Raw), FromMsgPack (Message Raw)
  • OSC: AsOscBundle (Message Raw), FromOsc (Message Raw), AsOscMessage (Message Formular), FromOscMessage (Message Formular) and some easter eggs.

On Strictness

This pack is open to tinkering and rapid prototyping. The most important plugin nodes' pin layout can be edited to your needs with a simple GUI window, that helps you to define a Formular. It shows you what's possible.

As your project grows, you should look into the more strict alternative, and switch your Formular Pin from None to one you defined, with Formular (Message), which will manage your Formular definition application wide and make it available to all nodes with the tag Formular


The essence of this pack, its core so to speak, is fully managed and can be used independently of any specific Plugin implementation. It is freely available on nuget under the name SharpMessage and also allows direct usage in any other .Net 4.6 application.


Marko Ritter (


  • Elias
  • Elliot
  • Björn
  • microdee
  • lecloneur
  • tmp
  • sebl
  • vux



This software is distributed with License: CC BY-NC-SA 4.0

Please note overriding, more liberal licensing terms in individual subdirectories, such as

  • SharpMessage License: LGPL v3
  • easteregg OSC Nodes License: LGPL v3


This software distribution defaults to the CC Attribution-NonCommercial-ShareAlike 4.0 license. This choice highlights, that this pack is for the community, really and open for all kinds of tinkering, learning and free remixing. If you find it useful, you can flattr us.

However, if you want to employ this pack commercially (or have any other reason why this license doesn't fit your need), contact us, the maintainers: Rates start at 42€, so don't hesitate.