0

CircuitPython online IDE, web-based, Zero setup, One stop
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

CircuitPython online IDE, web-based, Zero setup, One stop

by urfdvw on Thu Jun 17, 2021 7:41 pm

I recently worked on a remote education program teaching microcontroller programming to middle school students. These students have minimum computer knowledge, so I don't expect them to set up Arduino IDE correctly by themself before coming to classes. Plus, most, but not all, of them use Chromebooks, which is even harder to work with.

Thank God I found CircuitPython. The boards are not too expensive, and the setup is minimum, sort of. By a text editor, which usually comes with the OS (except Neverware), one can start to program immediately. However, if I want a serial console or REPL, I have to install something.

So I developed this CircuitPython Online IDE. It supports Python highlighting, file editing, serial console, REPL, and my favorite feature, [Shift+Enter] to send Editor codes to the console, which is very much like Jupyter Lab. Please check it out.

This IDE has not been used in a remote class yet. But please feel free to use/abuse it. If you have any feedback, that will be precious to me.

Online Editor: https://urfdvw.github.io/CircuitPython-online-IDE/
Github Link: https://github.com/urfdvw/CircuitPython-online-IDE
Youtube: https://youtu.be/Z44PD-ZleAU

PS:
I am aware of several other online IDEs there. I tried to combine their advantages.

urfdvw
 
Posts: 8
Joined: Sun Apr 11, 2021 11:12 pm

Re: CircuitPython online IDE, web-based, Zero setup, One sto

by blnkjns on Fri Jun 18, 2021 3:22 am

The Arduino IDE works very well online on Chromebooks:
https://support.arduino.cc/hc/en-us/art ... Chromebook

blnkjns
 
Posts: 663
Joined: Fri Oct 02, 2020 3:33 am

Re: CircuitPython online IDE, web-based, Zero setup, One sto

by urfdvw on Fri Jun 18, 2021 10:54 am

blnkjns wrote:The Arduino IDE works very well online on Chromebooks:
https://support.arduino.cc/hc/en-us/art ... Chromebook


Yes, I am aware of it. It requires the installation of a Chrome OS app that does NOT support windows. To use Arduino online IDE on Windows, one needs to install "Arduino Create Agent". If students using a mix of computers, that will be extra effort to help them installing things correctly.

The goal is Zero-Setup, which means no installations at all. (CircuitPython can be installed by teachers before shipping the boards to the students.) I guess installations are not problems for DIYers. But in a remote class, we want to avoid these hassles as much as possible to give more precious time to the contents. But besides all these class-related reasons, Zero-Setup IDE can also be convenient for everyday use.

I hope we can stop the discussion about Adruino IDE here because this is the CircuitPython section. I hope you find my IDE useful. Or if you think things can be improved, your suggestions are also very welcome.

urfdvw
 
Posts: 8
Joined: Sun Apr 11, 2021 11:12 pm

Re: CircuitPython online IDE, web-based, Zero setup, One sto

by MarksBench on Fri Jun 18, 2021 5:17 pm

Hello!

I haven't had a chance to connect a board to it yet but I poked around at the interface and I like it a lot, very nice!

I noticed that it remembers where I'm indented to (like in a loop) but is there a key combo that could be used to dedent instead of using the backspace key?

I can see this being very handy for times I'm away from home or need to use another computer that doesn't have an editor installed.

MarksBench
 
Posts: 58
Joined: Tue Apr 20, 2021 5:40 pm

Re: CircuitPython online IDE, web-based, Zero setup, One sto

by urfdvw on Fri Jun 18, 2021 6:13 pm

MarksBench wrote:I noticed that it remembers where I'm indented to (like in a loop) but is there a key combo that could be used to dedent instead of using the backspace key?


Thanks for your feedback.

Because I personally don't use this function, so forget to implement it. (That is why your feedback is so precious to me.) I updated the code. And now, when the line is empty, [Shift-Enter] will reduce indentation and make a newline. When the line is not empty, [Shift-Enter] will send the line to the console. This is to mimic the behavior of Jupyter Lab.

Note that you may also use Ctrl-[ and Ctrl-] to indent and dedent. Also [Tab] and [Shift-Tab].

Thanks again for your support.

urfdvw
 
Posts: 8
Joined: Sun Apr 11, 2021 11:12 pm

Re: CircuitPython online IDE, web-based, Zero setup, One sto

by tannewt on Mon Jun 21, 2021 10:17 pm

Very cool! I'd love to see this as a part of circuitpython.org. Maybe circuitpython.org/ide or code.circuitpython.org?

Auto-complete integration with the circuitpython stubs would be amazing too.

Nice work!

tannewt
 
Posts: 2490
Joined: Thu Oct 06, 2016 8:48 pm

Re: CircuitPython online IDE, web-based, Zero setup, One sto

by urfdvw on Tue Jun 22, 2021 10:06 am

tannewt wrote:Very cool! I'd love to see this as a part of circuitpython.org. Maybe circuitpython.org/ide or code.circuitpython.org?

Auto-complete integration with the circuitpython stubs would be amazing too.

Nice work!


Wow! That is high praise for me. It would be fantastic if this can reach and help more people.

I am using/testing the IDE every day now and continuously adding features to it. Autocompletion is of course on my todo list. And I am also trying to tailor the Python highlighting to fit CircuitPython keywords.

Thanks for your support!

urfdvw
 
Posts: 8
Joined: Sun Apr 11, 2021 11:12 pm

Re: CircuitPython online IDE, web-based, Zero setup, One sto

by tannewt on Tue Jun 22, 2021 2:35 pm

Awesome! We blogged it up as well: https://blog.adafruit.com/2021/06/22/an ... uitpython/

When you've got it to a place where you think it's ready for CircuitPython.org please make a pull request to: https://github.com/adafruit/circuitpython-org/ It's also hosted on github pages so it should be easy transfer over.

You may also want to look at the micro:bit editor here for inspiration: https://python.microbit.org/v/2

tannewt
 
Posts: 2490
Joined: Thu Oct 06, 2016 8:48 pm

Re: CircuitPython online IDE, web-based, Zero setup, One sto

by urfdvw on Wed Jun 23, 2021 2:21 pm

tannewt wrote:Awesome! We blogged it up as well: https://blog.adafruit.com/2021/06/22/an ... uitpython/

When you've got it to a place where you think it's ready for CircuitPython.org please make a pull request to: https://github.com/adafruit/circuitpython-org/ It's also hosted on github pages so it should be easy transfer over.

You may also want to look at the micro:bit editor here for inspiration: https://python.microbit.org/v/2


Thanks! I will do it when I feel things are ready. I will take a look at the micro:bit IDE as well.

urfdvw
 
Posts: 8
Joined: Sun Apr 11, 2021 11:12 pm

Please be positive and constructive with your questions and comments.