- 
                Notifications
    
You must be signed in to change notification settings  - Fork 5
 
Home
        Oleksandr Lobunets edited this page Aug 19, 2014 
        ·
        15 revisions
      
    Patchwork Toolkit - a Lightweight Platform for the Network of Things (written in Golang)
Patchwork is a toolkit written in Go programming language for connecting various devices into a network of things or, in a more broad case - Internet of Things (IoT). The main goal of creating this toolkit is having a lightweight set of components that can help to quickly integrate different devices (i.e. Arduinos, RaspberryPI’s, Plugwise, etc) into a smart environment and expose specific devices’ capabilities as RESTful/SOAP/CoAP/MQTT/etc services.
The key features of the toolkit include:
- Lightweight (no RAM-consuming sliced pie of Java and OSGi, only bare necessities)
 - Cross-platform (can be deployed on OSX/Linux/Windows, tested on RaspberryPI and BeagleBone Black boards)
 - Language-agnostic (device agents can be written in any programming language, APIs can be consumed by app written in any programming language)
 - Easy deployable (no JARs, no Eggs or Wheels for the core components, just a single native binary with statically linked dependencies)
 - Easy extendable (integrate new devices without modification of the core components, drop in solution)
 - Interchangeable (not happy with current existing Device Gateway or Catalog? replace it with another implementation without breaking the infrastructure)
 - Not re-inventing the wheel (we re-use as many existing technologies and components as possible)
 
About Patchwork Toolkit
Configuration
- Configuring Device Gateway
 - Configuring Devices
 - Configuring Device Catalog
 - Configuring Service Catalog
 - Configuring Services
 
Deployment examples
- Singleall-in-on-box
 - Multiple Device Gateways with optional central Device Catalog
 - Using central Service Catalog
 
API for Application developers
Integrating devices
- TBD...
 
Third-party integrations
