ioBroker.javascript  by ioBroker

Script engine for IoT automation and AI integration

Created 11 years ago
329 stars

Top 83.2% on SourcePulse

GitHubView on GitHub
Project Summary

<2-3 sentences summarising what the project addresses and solves, the target audience, and the benefit.> The ioBroker.javascript adapter provides a robust script engine for the ioBroker home automation platform, allowing users to execute custom logic using JavaScript, TypeScript, and the visual Blockly interface. It empowers users to automate complex tasks, integrate diverse smart home devices, and leverage advanced features like local LLM integration. The primary audience includes ioBroker users seeking to extend the platform's capabilities through custom scripting and automation.

How It Works

This adapter executes user-defined scripts within the ioBroker environment, facilitating interaction with connected devices and services. It supports modern JavaScript and TypeScript, alongside the visual Blockly programming interface for simplified script creation. A key recent enhancement is the integration of OpenAI-compatible LLM APIs, enabling dynamic model fetching, server-side proxying to circumvent CORS issues, and intelligent processing of LLM outputs for local models.

Quick Start & Requirements

The provided README does not detail specific installation commands or explicit system prerequisites beyond noting that Sentry error reporting is utilized starting with js-controller version 3.0. Links to detailed function documentation and Blockly usage guides are available in multiple languages (US English, German, Russian).

Highlighted Details

  • Executes JavaScript, TypeScript, and Blockly scripts for custom automation within ioBroker.
  • Version 9.1.1 introduces comprehensive support for OpenAI-compatible LLM APIs (e.g., Ollama, LM Studio, Gemini), featuring dynamic model discovery, API testing, and server-side proxying to resolve CORS limitations.
  • Includes an option for vendors to encrypt scripts using a password.
  • Features automatic Sentry reporting for exceptions and code errors, with an option to disable this functionality.

Maintenance & Community

The project shows active maintenance with recent contributions from developers such as GermanBluefox and klein0r. Documentation links are provided in multiple languages. No explicit community channels like Discord or Slack, nor a public roadmap, are mentioned in the provided text.

Licensing & Compatibility

The software is distributed under the MIT License. This permissive license allows for broad use, modification, and distribution, including for commercial purposes, provided the original copyright and license notice are retained.

Limitations & Caveats

Script encryption is explicitly designated as a feature "only for vendors." The Sentry error reporting is enabled by default and requires explicit configuration to be disabled. The README does not specify any particular hardware requirements or other non-default dependencies beyond the js-controller version for Sentry reporting.

Health Check
Last Commit

4 days ago

Responsiveness

Inactive

Pull Requests (30d)
21
Issues (30d)
8
Star History
1 stars in the last 30 days

Explore Similar Projects

Starred by Yaowei Zheng Yaowei Zheng(Author of LLaMA-Factory), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
7 more.

fragments by e2b-dev

0.2%
6k
Next.js template for AI-generated apps
Created 1 year ago
Updated 1 week ago
Feedback? Help us improve.