What is it?
Bridge The Gap Between Hardware And Software.
Noam is a messaging platform that allows you to create complex interactive products by easily networking hardware and software elements together.
How Does it Work?
Making Complex Conversations Simple.
Technology has a very human problem—everything speaks a different dialect. Getting hardware and software talking through a single coordinated conversation is a real challenge. Noam moderates the conversation, provides translation between dialects, and handles messaging between participants. Now creating multi-element protoytpes is simple, flexible and powerful.
Noam supports the platforms and languages you're already using,
it's as easy as typing
"A test message string.");
Don't worry about protocols, schema, queues, data types, or
message parsing. If you can connect to the LAN, you can use
Noam. Just load the lemma.h library, and write
The Noam server installs in seconds and handles a large volume of messages between an Participants that share the same WiFi or Ethernet network.
We've used Noam to prototype digital interactions in a car simulator, create sensor laden intelligent adaptable spaces, and kinetic sculptures with a 100-strong array of moving LED light bulbs.
Create More, Code Less.
We believe the world is full of untapped creative potential. Noam was designed to make building interactive prototypes easier for makers and coders of all kinds. It is optimized for flexibility, simplicity of use, and support of common technology dialects.
Simple & Powerful Messaging
It’s easy to use a variety of messages without worrying about servers, protocols, encryption, queues, time stamps, or other configuration efforts. Noam balances simplicity with power so that you can build more and code less.
Designed for Experimentation
When you’re prototyping, you’re experimenting and flexibility is paramount—Noam makes it easy to play with different inputs and outputs to create or interpret the same messages.
Open Source. Community Supported.
We built Noam to solve a recurring problem we encountered during prototyping. Now we’re hoping you’ll help us make it better by using it to create and sharing code you develop with the community.
Open Source, Open Standards
We use the best open standards and frameworks available like Ruby, Sinatra, JSON, and TCP. Noam is intended to be shared freely and licensed as open source software.
Noam’s growth as a prototyping platform depends upon your contribution. We’re hopeful the community will add features, write new Lemmas, and share components so we can all build more and code less.
Tech Specs & Architecture.
Noam is a networked implementation of a pub/sub pattern using TCP/IP protocols.
Noam uses an speak/hear asynchronous event-based messaging metaphor.
Noam Lemmas register to ‘hear’ named Messages, and execute asynchronous call-backs when those Messages are heard.
Lemmas can also ‘speak’ named Messages, and the Noam server will pass the Message to all Lemmas that have registered for it.
Message data is transmitted in JSON, allowing for type-agnostic Lemma methods.
Discovery and registration with the Noam server are handled automatically by the Lemma, the only public methods exposed to the application are the ‘speak’ and ‘hear’ methods.
1. Install the Noam Moderator
Download the starter kit, launch the Noam app, name your Moderator and you’re ready to go.
2. Try a Noam Conversation
Launch the example applications included in the starter kit and check out how topics and messages work.
3. Add your own Participants
Download the Lemmas that will help you add your own Participants to the conversation.