Appliq is a "personal software platform" that you can use to design actions and data processing in a very simple yet powerful way. If it seems to be of your interest, let's go on...

Appliq 0.1.1

A Processor

This is a processor.

It's a simple applicative unit (you can see it as a small program) that receives messages, little pieces of information, performs an operation on them, and outputs other messages (along the arrows that you can see).

Appliq is an engine that lets you join many such processors in a flow, a sequence of simple operations that lets you define how these data are processed.

It's a simple, but very powerful concept: some processor gathers the data, turns them into messages, then dispatches them along the arrows. Other processors collect them, process them, and in the end deliver them to an endpoint (a mail sender, an actuator... who knows?).

How does it work?

Let me reiterate on this: each processor is a very simple, very basic piece of application that does one thing, and does it well, and fast. It doesn't know where the messages it receives come from, or where the ones he produces go; Appliq manages the message exchange (routing them unconditionally, as in the picture above, or depending on their content) in a way that creates a functional "super-application", all in a few steps.

What is provided?

Appliq will be composed of three things:

  • The engine: It's the server that manages the flows. It's very lightweight and scalable, in order to grant maximum accessibility.
  • The designer: a rich graphical environment to design the flows and manage the engine. It has an aspect similar to the screenshot in the upper bar, and will allow the user to see the results of his work as he "draw" flows of processors.
  • The processor library: a library of predefined processor, useful to design a typical flow.
  • An SDK: further processors can be simply made in Java or in Javascript, using Eclipse, in order to enrich the library, create new libraries or extend the system in any way you like.

What will it be good for?

  • Education: Appliq can be ideal for education. Both for introduction to informatics, for its flow chart-like structure and semplicity (remember LOGO?) and for introduction to Java/Javascript programming, as programming processor gives a simple yet powerful and extensible framework for many applications.
    Moreover, you can easily build libraries of flows and processors to share among the students or on the internet.
  • Desktop automation: with the right set of processors, an user can, with a few click, program simple tasks that respond to events with complex actions. You want to be warned by email that an internet site has changed its contents or is no more accessible? Easy. Import contacts from an Excel file, filter them by group and configure fill a form in a text file for each of them? Yeah.
  • Device management: check that a device in your network is online. Control the status of sensors, and do actions based on the result. Even make a robot move. It's possible, with a proper set of processors... and if we don't have them, have fun creating!
  • Embedded programming: embedded systems are growing more and more powerful and affordable. Check out e.g. the Beagleboard and the Raspberry Pi... and imagine having a complete automation tool on-the-go, to control your devices without the need of a full computer system. Drool!

What's the status?

The server is fairly complete, and the GUI is complete too. Everything seems to be decently stable. Processor library is coming along; so if you want to take a look, please do!

A few facts

  • Appliq will be Open Source, under the GPL 3 license.

  • Appliq was born from a code donation by Aton S.p.A., as a simplified and lightweight version of its RFID middleware, AMP (Aton Mobility Platform).
    Thanks to their vision, we've been able to build a project on a strong, mature basis.

  • You're free to browse the code.

  • It's written in pure Java (7 or +), so it will be available for the systems that support a full JVM. A particular attention will be reserved to GNU/Linux, OS X and Windows.

  • It is extremely extensible: new processors can be programmed in a very simple way, using Java, Lua or in the future other scripting languages.

  • Of course, the flows can be saved and loaded elsewhere... freely share your creations with other people!

  • If you're interested, drop us a line! Write to

Useful links