Developers Quick Start


  • Java JDK: Version 8 OpenJDK/Oracle JDK (to install on Ubuntu: sudo apt-get install openjdk-8-jdk)
  • Maven: Version 2 or 3 (to install on Ubuntu: sudo apt-get install maven)
  • Any OS with java support (Linux, Windows, Mac, Solaris ...)

Development status: beta testing

Current released version: Freedomotic Commander 5.6 RC4 (released on 16 Aug 2017)

Set your local development environment

  1. Fork Freedomotic on GitHub
git clone

Now you are ready to work.

  1. Enter the new local folder
cd freedomotic
  1. Compile Freedomotic with maven
mvn clean install
  1. IMPORTANT!!!! THIS IS REQUIRED: copy the example-data folder into freedomotic-core/data.

If you miss this step Freedomotic won’t start

cp -r data-example/ framework/freedomotic-core/data
  1. Run Freedomotic
java -jar framework/freedomotic-core/target/freedomotic-core/freedomotic.jar

Git repository is an SDK

The Git repository is a complete SDK with all you need to code and test your Freedomotic plugins. Once compiled for the first time, open the freedomotic-core project with your favourite IDE and start it to try Freedomotic.

To develop your own plugin, you can start from the hello-world example project included in GIT_ROOT/plugins/devices/hello-world.

Open it in your IDE, make some changes and compile. It will be automatically installed into the Freedomotic runtime (freedomotic-core project). Just start freedomotic-core to try your latest changes.

Create a build release

To create a new release package execute inside the ROOT folder

mvn clean install

The zip file containing the build release is located inside GIT_ROOT/framework/freedomotic-core/target/release/.

The release process is based on create-release.xml file.


Please join our international or Italian community and share your experience.