This page contains everything you need to get started with the aREST framework. The aREST framework was created to give RESTful interface to several embedded boards & platforms. In a nutshell, the library allows you to send commands to a given board running aREST, provoke an action (or just get some data), and send data back in a JSON container.

For example, to set the state of pin 6 to HIGH on an Arduino board running aREST, connected to your local network via Ethernet, and with the IP address, you would send the command:

It’s that simple. As an answer, the board will then send:

{“message”: “Pin D6 set to 1”, “id”: “1”, “name”: “arduino”, “connected”: true}

This makes aREST really easy to use for your connected project. You don’t have to change the code on your embedded boards anymore: set it once, and then interact with your boards using a RESTful interface.

On this page, you will find guides to get you started with the main components available inside the aREST framework. You can also learn more about the aREST framework by reading the Discover the aREST Framework book.


Control your Arduino boards remotely

The aREST Arduino library, which you can use to interact with Arduino boards via WiFi, Ethernet, Serial communications, and Bluetooth Low Energy.

Cloud Access

Control your projects from anwyhere

How to use the aREST library to control your Arduino, ESP8266 and other projects from anywhere in the world. You will be able to access your boards using the API.

Raspberry Pi

Control your Pi remotely

The pi-aREST library, allowing you to control your Raspberry Pi remotely (via Ethernet of WiFi) just like an Arduino board, and also access the Raspberry Pi camera remotely.

aREST.js Library

Client-side Javascript library to control aREST projects

The aREST.js module, that you can use to control several boards from a simple HTML page, using a graphical interface if you want to. This doesn’t require the use of any web server.

aREST Server

Node.js module to control multiple boards

The Node.js aREST module, that you can use to control several boards from a central server, in a completely transparent way, whatever the communication medium of the boards is.