Skip to content

About

A visual IDE that generates Go code (server, desktop, embedded) and C99 firmware from block diagrams. Go + WebAssembly.

Topics

Resources

Contributing

Stars

4 stars

Watchers

0 watching

Forks

Latest commit

 

History

38 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IoTMaker

Status: under active development. Go code generation and C99 target support are in progress.

License: AGPL v3 Commercial license available

A visual IDE for Code and Firmware.

What Arduino did for hardware, IoTMaker aims to do for the code.

IoTMaker is a graphical IDE that blends visual and textual programming. You build logic by connecting blocks on a stage, and the IDE generates compilable source code. It is inspired by Arduino: the same block a child wires visually is a block an engineer can write in C99 or Golang.

Who it's for

Makers connect blocks on the stage and export working code — no programming required.

Specialists write reusable components ("black boxes"), following the IoTMaker Doc Standard; each one becomes a graphical block a maker can wire.

How it works

You don't need to know how to program; you simply connect blocks.

This is a graphical IDE designed to transform sets of blocks into C99 or Golang source code.

It was designed to allow non-programmers to connect blocks and generate source code.

my_function

However, it was also conceived to enable engineers to transform large amounts of complex code into simple graphical blocks, while preserving the underlying code.

Write your source code in C99 or Golang.

write_code

Check and configure the graphical interface to your liking.

parser

Document your work so that the community can use it easily.

document

Your documentation becomes a manual integrated into the menu, simplifying usage.

menu

Include a usage example for the user who just wants to run the initial functional test.

example

Designed to be efficient

Don't waste time searching for the information needed to complete your project; the graphical interface was designed for efficiency, putting the information right in the palm of your hand.

image1

image2

image3

The user interface was designed to be easy to configure, so you don't waste time searching for settings; you simply click on the graphical device to access its configuration.

image6

It is so easy that we can even sketch out the result for you.

image4

❤️ Support this project

IoTMaker is built by a single developer. If you believe a kid in a classroom and an engineer in a lab should be able to use the same tool, you can help:

Sponsor on GitHub

Start server

  cd server
  make docker-up-full

Documentation

The documentation is preliminary and is located in the 00_howto folder.

License

IoTMaker uses a two-level licensing model — please read this before building on it.

The IoTMaker platform (this repository)

The IDE, generator, and libraries are dual-licensed:

  • Open source — GNU AGPL v3.0 — see LICENSE. If you run a modified version as a network service, you must make your source available. This is what keeps IoTMaker open and prevents it from being closed and resold as a service.
  • Commercial — for embedding IoTMaker in a proprietary product or a hosted service without AGPL obligations — see LICENSING.md. Contact licensing@iotmaker.io.

Code you create with IoTMaker is yours

Firmware generated by the tool, and components you export, are not covered by the AGPL. You own your output and may license it however you choose. Exported projects default to the Apache License 2.0. See the generated-code exception.

Contributing

Contributions are made under the Contributor License Agreement; see CONTRIBUTING.md.

Trademark

"IoTMaker", the IoTMaker logo, and iotmaker.io are reserved and are not licensed under the AGPL. You may run and fork the code, but you may not present a fork as the official IoTMaker project or use the name or logo to imply endorsement.

Links

About

A visual IDE that generates Go code (server, desktop, embedded) and C99 firmware from block diagrams. Go + WebAssembly.

Topics

Resources

Contributing

Stars

4 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages