freedomotic

Developers Quick Start

Requirements

  • 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 https://github.com/YOUR-GITHUB-USERNAME/freedomotic.git

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.

Support

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