Developer Journal #2: New Alpha Release #piday #raspberrypi @Raspberry_Pi

We’ve recently released a pretty big update to the Raspberry Pi WebIDE so I figured I’d take a moment to discuss some of the decisions we’ve made, and a few of the things we’re working on.

The biggest upgrade from 0.1.9 to 0.2.0 is a new installation process.  This should fix many of the outstanding bugs that have been reported, and the installation should take significantly less time than the previous version to complete.

  • The first thing is that the new installer is using a new user, so that it isn’t tied to your existing user.  One of the features we had to have working is access to GPIO and I2C.  As I previously wrote about, we currently need root access to easily access the GPIO pins.  For the time being, we’ve given the ‘webide’ user access to sudo, and the same permissions as the default ‘pi’ user.  We’d like to slowly remove the requirement for root access, but that will take some time.  You can manually disable these features, if you don’t need access to the GPIO pins.
  • The next feature is that the editor uses about 10-20mb less memory.  We switched from having a node process monitoring the server (in the case of crashes, or updates), to a lighter weight process monitor, restartd.  It’s not as feature-packed as some of the other process monitors (monit, supervisors, etc), but it’s pretty simple to get working, and seems stable enough.
  • Also, you can drop off the port :3000 on your URL’s when accessing the editor.  We’ve used ‘setcap’ to give access to the node process to port 80 without running the node process as root.
  • Those are mostly behind the scenes features, but one that we’ve added in for users with multiple Pi’s is being able to change the hostname of the pi from within the editor.  It’s an early test of the feature, and can be accessed at /config.  This would be useful in a classroom situation, making it easy for teachers to name their pi’s differently so there aren’t any conflicts.  It’s also useful for that situation when you have multiple Pi’s autonomously monitoring your surroundings, slowly taking control of your house until you come home one day and you’ve been locked out for good. 😉

Some of the features I’d like to work on in the future:

  • Make the editor updating features more fault tolerant.  Right now it’s fairly simple, and you’re not easily able to back out to a previous version.  I don’t think we’ll ever need to push out a lot of updates, but if an update failed, it would be nice not to have to uninstall and re-install the editor.
  • A job queue of sorts would be an interesting idea to implement that I’m sure folks would find useful.  The goal would be to basically abstract cron so that you can easily manage scheduled jobs.  For example, let’s say you’d like to check the temperature every 10 minutes, and update a google spreadsheet with that data.  You could navigate to your script in the editor, click “Create Job”, choose your parameters, and save.  At that point, your script would run until you tell it to stop, even when you’re not using the editor.  The key to this feature is keeping it simple enough for everyone to use.
  • Making the editing itself even better.  There are a lot of things we can do here, from adding key bindings for power users, to tabbed editing, and just quickly fixing the issues folks are submitting in github.

Learn how to install the WebIDE on your Raspberry Pi here.


The Adafruit Learning Technologies team develops tools and resources to help people learn.  In an effort to be as open as possible and to keep our awesome community involved, we decided to do a periodical Developer Journal.  In our Developer Journal posts, we will share with you the current Adafruit Learning Technologies projects in development, upcoming new features, and the status of existing projects.  Check out our current projects, the Adafruit Learning System, and the WebIDE.


998Each Friday is PiDay here at Adafruit, be sure to check out our posts, tutorials and new Raspberry Pi related products. Have you tried the new “Adafruit Raspberry Pi Educational Linux Distro” ? It’s our tweaked distribution for teaching electronics using the Raspberry Pi. But wait, there’s more! Try our new Raspberry Pi WebIDE! The easiest way to learn programming on a Raspberry Pi.

Want a FREE RASPBERRY PI? All orders over $350 get a FREE Raspberry Pi Model B with 512MB RAM!


Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here: adafruit.com/editorialstandards

Join Adafruit on Mastodon

Adafruit is on Mastodon, join in! adafruit.com/mastodon

Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7pm ET! To join, head over to YouTube and check out the show’s live chat – we’ll post the link there.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Join over 36,000+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord

CircuitPython – The easiest way to program microcontrollers – CircuitPython.org


Maker Business — “Packaging” chips in the US

Wearables — Enclosures help fight body humidity in costumes

Electronics — Transformers: More than meets the eye!

Python for Microcontrollers — Python on Microcontrollers Newsletter: Silicon Labs introduces CircuitPython support, and more! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi

Adafruit IoT Monthly — Guardian Robot, Weather-wise Umbrella Stand, and more!

Microsoft MakeCode — MakeCode Thank You!

EYE on NPI — Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — #NewProds 7/19/23 Feat. Adafruit Matrix Portal S3 CircuitPython Powered Internet Display!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !



No Comments

No comments yet.

Sorry, the comment form is closed at this time.