jaNET Framework: A free and open source framework for the IoT. It provides mechanisms for interoperability
C# JavaScript HTML CSS
Switch branches/tags
Nothing to show

README.md

jaNET Framework

Introduction

A free and open source IoT framework that provides a set of built-in functions, a native API (judo API), and multiple providers, such as scheduler, evaluator, notification manager and others, to allow a 3rd party software (e.g. Jubito, see details below) to exploit, in order to interact with multiple services, software applications and vendor hardware (especially open hardware, such as Arduino, Raspberry Pi, Banana Pi, etc). It is designed for interoperability, therefore, to be absolutely vendor-neutral as well as hardware/protocol-agnostic. It can operate on any device that is capable of running .NET Framework or Mono (Linux, Windows, Mac, including single-board computers, such Raspberry Pi and Banana Pi).

Usage

  1. Clone the repository, open the solution with Visual Studio or MonoDevelop and build it.
  2. Copy 'www' root directory inside your build folder, e.g. janet-framework\jaNETProgram\bin\Debug.
  3. Run the application (jaNETProgram.exe) and access Jubito UI (http:/localhost:8080/www/)[1] in your browser.

[1] Default built-in web server provided by the framework is listening to localhost on port 8080.

You can change defaults by corresponding UI menu (Menu->Settings->Web Server) or via judo API.

judo server setup [host] [port] [authentication]
i.e. judo server setup localhost 8080 none|basic

judo API doc

Structure

There's basically two components in the core system:

  • Instruction Sets
  • Events

Help

A forum wil be started at some point.
Submit bugs or feature requests here and turn yourself into a valuable project participant.

Requirements

Windows

  • .NET Framework > 4.0
  • Visual Studio (any version)

Linux

Configuration

All system configuration are described in System tag within AppConfig.xml.
They can manipulated by judo API, but I suggest you doing it, either by editing the XML or by the web UI (Menu->Settings).

Hardware & Software Compatibility

It is fully tested and runnable on devices listed below:

  • Any computer with Windows or Linux desktops
  • Raspberry Pi 3 Model B
  • Banana Pi
  • Banana Pro
  • BPi-R1

Attached microcontrollers:

Examples:

Contributing

Any kind of contribution is always very welcome and appreciated.
Once you're familiar with the way jaNET works then you might want to contribute to the core system.

Contact

You may reach out to me via email or contact form.

License

This project is licensed under GNU General Public License (http://www.gnu.org/licenses/).

Wiki

https://github.com/jambelnet/janet-framework/wiki

About Jubito

Jubito is a complete DIY automation solution. An awarded IoT hub (Technical Enabler: Application Enablement - Honors & Awards) based on jaNET Framework. To get a deeper understanding on how the web application layer sits on top, and implements the framework, download Jubito, open index.html and js/jubito.core.js files and read through the code. They are located on the /www/ root directory. A copy of it, can be found on this git as well. Afterwards you'll be able to create custom widgets and more.

Tech blog: http://jubitoblog.blogspot.com
FAQ: http://jubito.org/faq.html

Jubito Screenshot

screenshot