Giter Site home page Giter Site logo

fralacticus / circuitblocks Goto Github PK

View Code? Open in Web Editor NEW

This project forked from circuitmess/circuitblocks

0.0 0.0 0.0 6.9 MB

A graphical programming interface that helps newbies get into embedded programming. It's based on Google's Blockly and turns blocks into arduino-compatible code.

License: MIT License

Shell 0.03% JavaScript 83.63% Python 0.13% TypeScript 15.15% CSS 0.14% HTML 0.34% Less 0.57%

circuitblocks's Introduction

The desktop version of CircuitBlocks has been deprecated. Please check out the new web version of CircuitBlocks which runs directly in your browser and features Python code generation.

CircuitBlocks

A graphical programming interface that helps newbies get into embedded programming. Based on Microsoft's MakeCode, PXT-Blockly (Google Blockly fork), and carlosperate's Ardublockly.

CircuitBlocks downloads and executables can be found here.

When first started, the app will try to identify an already existing Arduino installation. If one isn't found it will download and install the Arduino IDE along with all the required drivers and libraries required for the CircuitMess Ringo board.


NOTE: You can skip these steps if you just want to use CircuitBlocks. Find the installation guide and the tutorial here.

Running a dev environtment

To build the electron native modules, you will need some build tools. More info at the nodejs/node-gyp github repo.

Clone the repository, install all core and client dependencies, build electron native modules:

git clone https://github.com/CircuitMess/CircuitBlocks.git
cd CircuitBlocks/client
yarn
cd ..
yarn
yarn electron-rebuild

And then run with yarn dev in the root directory of the repository.

The frontend server and electron backend can also be started separately. To start the server run yarn dev in the client directory, and to start the electron backend, run yarn electron-start in the root directory of the repository.

Building

The app is packaged using electron-builder. To package it, you first need to build the frontend and electron backend with yarn build. Then you can package it with yarn dist:

cd client
yarn build
cd ..
yarn build
yarn dist

This will produce the binaries for your platform in the dist directory.

Issues

yarn electron-rebuild fails

If electron-rebuild fails, you can try compiling using an older compiler version or another compiler altogether. Specifying which gcc and g++ binaries yarn should use to compile native dependencies can be done by setting the CC and CXX env variables, or by modifying the rebuild-electron script in package.json like this:

"scripts": {
  "rebuild-electron": "CC=/usr/bin/gcc-7 CXX=/usr/bin/g++-7 yarn electron-rebuild",
  ...
}

And then using yarn rebuild-electron instead of electron-rebuild.

Meta

CircuitMess - https://www.circuitmess.com/ - @circuitmess.com

Facebook - https://www.facebook.com/makerbuino/

Instagram - https://www.instagram.com/thecircuitmess/

Twitter - https://twitter.com/circuitmess

YouTube - https://www.youtube.com/channel/UCVUvt1CeoZpCSnwg3oBMsOQ

Copyright © 2021 CircuitMess

Licensed under the MIT license (See LICENSE.md)

circuitblocks's People

Contributors

filipbudisa avatar zeko369 avatar dependabot[bot] avatar robbie8-bit avatar doridugandzic avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.