joynr icon indicating copy to clipboard operation
joynr copied to clipboard

A transport protocol agnostic (MQTT, HTTP, WebSockets etc.) Franca IDL based communication framework supporting multiple communication paradigms (RPC, Pub-Sub, broadcast etc.)

joynr

What is joynr?

joynr is a web-based communication framework for Java, C++, and JavaScript applications wanting to interact with other applications, no matter whether they're deployed on consumer devices, vehicles, backend infrastructure or in the cloud.

joynr makes writing distributed applications easy, as it:

  • takes care of determining the most appropriate communication paradigm to talk with the desired end point
  • provides a simple application programming interface to the joynr framework
  • speeds up integration of new applications

... allowing you to focus on building your distributed application.

How do I write joynr?

joynr is correctly written as "joynr". It is not an abbreviation nor a combination of words.

Documentation

Have a peek at our documentation for more information:

  • Get to know joynr -- Introduction to joynr
  • Using joynr -- General information about joynr
    • Franca IDL overview -- Introduction to Franca Interface Definition Language used for modelling
    • joynr Code Generator -- Using the joynr Code Generator to generate code from the Franca model files
    • Infrastructure -- Setting up the joynr infrastructure components for your environment
    • Multiple backends -- joynr with multiple backends (multiple global connections)
  • Building joynr
    • Building joynr Java -- Building joynr Java and common components yourself
    • Building joynr C++ -- Building joynr C++ yourself
    • Building joynr JavaScript -- Building joynr JavaScript yourself
  • Developer documentation
    • Java and JEE
      • Java Developer Guide -- Developing Java applications with joynr
      • Java Configuration Reference -- a reference of the available configuration options for Java and JEE joynr applications
      • MQTT Clients -- how to choose and configure the MQTT client to use for a Java runtime.
      • JEE Developer Guide -- Developing JEE applications with joynr
      • Glassfish Settings -- Settings you need to run joynr backend services on Glassfish application servers
    • Android
      • Android Developer Guide -- Developing Android applications with joynr
    • C++
      • C++ Developer Guide -- Developing C++ applications with joynr
      • C++ cluster-controller Settings -- C++ cluster-controller settings
    • JavaScript / TypeScript
      • JavaScript Developer Guide -- Developing JavaScript applications with joynr
      • JavaScript Configuration Reference -- a reference of the available configuration options for JavaScript and TypeScript joynr applications
      • For details about running the joynr Javascript tests see joynr Javascript Testing
  • Tutorials
    • Radio App Tutorial -- Create your first joynr app: define a communication interface, implement a provider, and create a consumer
    • Broadcast Tutorial -- Learn about (selective) broadcasts and implement a geocast
    • JavaScript Tutorial -- Create your first joynr JavaScript application
  • Distribution -- How to get joynr
  • Versioning scheme -- Meaning of joynr version numbers
  • Release Notes -- All joynr releases and API changes at a glance