MCPcopy Index your code
hub / github.com/adrianromero/helloiot

github.com/adrianromero/helloiot @1.1.040

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.1.040 ↗ · + Follow
1,491 symbols 4,017 edges 210 files 146 documented · 10% updated 5y ago1.1.030 · 2019-08-04★ 110
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

HelloIoT Release

HelloIoT is a MQTT dashboard application. You can use HelloIoT as a MQTT client application to publish and subscribe to topics or you can use HelloIoT as a client platform to create your own dashboard. HelloIoT is a Java multiplatform application and it can run on Windows, MacOS, Linux or Android.

Screenshot

Getting started

Install and execute HelloIoT

To run HelloIoT for desktop systems, just download and uncompress the appropiate release file. The executable is located in image/bin/HelloIoT.

To run HelloIoT for Android you must allow your device to install unknown apps, download the following release file and install.

Install a MQTT Broker

To run HelloIoT you need to install a MQTT broker or you can use a public MQTT broker. Public MQTT brokers can be good for testing or prototyping purposes. There is a list of MQTT brokers in the MQTT Community Wiki, you can choose the broker that better fits your needs.

HelloIoT is developed and tested using Mosquitto but it will also work with other MQTT Brokers like HiveMQ, EMQTT, Moquette...

Execute HelloIoT from sources

If you prefer to run HelloIoT from sources clone the repository, build and execute. You will need Java 11 installed first.

git clone https://github.com/adrianromero/helloiot
cd ./helloiot
./gradlew run

Other MQTT tools

In the MQTT Community Wiki, you can find a list of client applications and tools. My favorites are:

  • MQTT.fx by Jens Deters and created with JavaFX.
  • mqtt-spy by Kamil Baczkowicz and also created with JavaFX.

Acknowledgments

  • Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
  • Roboto font https://www.google.com/fonts/specimen/Roboto (Apache License Version 2.0)
  • Sound clips from http://www.soundjay.com/
  • Medusa JavaFX library for Gauges by Gerrit Grunwald. https://github.com/HanSolo/Medusa (Apache License Version 2.0)
  • Eclipse Paho MQTT Java library. https://www.eclipse.org/paho/clients/java/ (Eclipse Public License 1.0)
  • Google Guice library. https://github.com/google/guice (Apache License Version 2.0)
  • JideSoft Common library. https://github.com/jidesoft/jidefx-oss (GPL version 2 with classpath exception)
  • Apache Commons IO. https://commons.apache.org/proper/commons-io/ (Apache License Version 2.0)
  • MQTT Bridge for IKEA Tradfri Light Gateway by Ben Hardill https://github.com/hardillb/TRADFRI2MQTT (Apache License Version 2.0)

License

HelloIoT is licensed under the GNU General Public License, Version 3, 29 June 2007

Extension points exported contracts — how you extend this code

Unit (Interface)
@author adrian [15 implementers]
src/main/java/com/adr/helloiotlib/unit/Unit.java
MiniVar (Interface)
@author adrian [12 implementers]
src/main/java/com/adr/helloiotlib/format/MiniVar.java
SubProperties (Interface)
@author adrian [6 implementers]
src/main/java/com/adr/helloiot/SubProperties.java
MainManager (Interface)
@author adrian [35 implementers]
src/main/java/com/adr/helloiot/MainManager.java
ManagerProtocol (Interface)
@author adrian [10 implementers]
src/main/java/com/adr/helloiot/ManagerProtocol.java

Core symbols most depended-on inside this repo

getStyleClass
called by 151
src/main/java/com/adr/helloiot/unit/ChartSerie.java
getProperty
called by 119
src/main/java/com/adr/helloiot/SubProperties.java
setText
called by 86
src/main/java/com/adr/helloiot/unit/ButtonBase.java
create
called by 84
src/main/java/com/adr/helloiot/topicinfo/TopicInfoFactory.java
build
called by 80
src/main/java/com/adr/helloiot/unit/GaugeType.java
setProperty
called by 73
src/main/java/com/adr/helloiot/SubProperties.java
get
called by 73
src/main/java/com/adr/helloiot/unit/GaugeType.java
getFormat
called by 71
src/main/java/com/adr/helloiotlib/device/Device.java

Shape

Method 1,266
Class 190
Interface 30
Enum 5

Languages

Java100%

Modules by API surface

src/main/java/com/adr/helloiot/ClientLoginNode.java31 symbols
src/main/java/com/adr/helloiot/unit/UnitPage.java26 symbols
src/main/java/com/adr/helloiot/unit/ViewGauge.java25 symbols
src/main/java/com/adr/helloiot/HelloIoTApp.java24 symbols
src/main/java/com/adr/helloiot/tradfri/ManagerTradfri.java19 symbols
src/main/java/com/adr/helloiot/MainNode.java19 symbols
src/main/java/com/adr/helloiot/tradfri/ConnectTradfri.java18 symbols
src/main/java/com/adr/helloiot/unit/SecurityKeyboard.java17 symbols
src/main/java/com/adr/helloiot/device/DeviceNumber.java17 symbols
src/main/java/com/adr/helloiot/unit/EditStatus.java16 symbols
src/main/java/com/adr/helloiot/unit/ControlIntensity.java16 symbols
src/main/java/com/adr/helloiot/unit/ChartSerie.java16 symbols

For agents

$ claude mcp add helloiot \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact