The latest version of the Adafruit webIDE now supports the BeagleBone and BeagleBone Black. We’ve been working out many of the issues with this installer the last few days, and it appears ready to be released into the wild. The installer is specifically designed to work with the default Angstrom Linux distribution that is pre-installed on the BeagleBone’s. You may want to update to the latest version of Angstrom prior to installing the webIDE as well.
You can find the instructions on how to install it in the Adafruit Learning System’s webIDE tutorial. We’ve also created a new installation video to help as well:
If you run into any issues with installing the webIDE on the BeagleBone, or with any issues running the webIDE, please open a ticket in the issues section of our GitHub repository.
We have a new alpha release of the Rapsberry Pi WebIDE ready to go. This latest version features a few major features requested by users of the WebIDE.
We now have a new offline mode that you can enable with an –offline flag when you install the WebIDE. This mode allows you to bypass using Bitbucket or Github, and should work when not connected to the internet.
We also have a new experimental GitHub mode that allows you to sign in with your GitHub account. This feature is for advanced users that want to use GitHub as their provider. This can be enabled with the –github flag during installation. Please note that GitHub mode does not do some of the automated things (git ssh key setup, etc) that the default installation mode will do.
You can now refresh the left navigator from within the WebIDE, as well as manually update any repositories you have by right-clicking on them, and choosing the option to “Update Repository”.
The full list of new changes for the 0.3.7 version of the WebIDE are as follows:
Github support.
Ability to enable with –github as the default
Advanced setting.
Requires manual ssh key setup as of yet.
Most commands are treated as manual mode for now (manual commits, etc).
New Offline mode
Ability to install with –offline as the default
need to manually commit, and push changes (similar to the manual git setting)
Bypasses bitbucket OAuth
Ability to refresh directories from within the navigator
New option to clone repositories without updating remote to bitbucket
New right-click context menu option to update repositories from remote (origin/master for now)
New Report Bug Link added to footer
New confirmation dialog for navigating away from unsaved changes…Save Files/Don’t Save/Cancel
Editor is set to readOnly for any files that shouldn’t change (README, update notes), including empty editor window while navigating.
Deleting a file or project will now also delete a corresponding scheduled job from the queue.
Errors cloning repositories are sent to the front-end now.
Error handling for most git commands now. Notifications visible in webide for failures.
New Error pages for any issues with the system failing to show pages. Links to ALS WebIDE FAQ for help.
New Error page specifically for OAuth failures. Adds a button to execute a script to help set the date and time.
Attempt to set the date on the Pi during installation to prevent OAuth errors.
Creating files and folders will automatically open them in the editor and navigator.
Uploaded files will always use the current working directory, instead of uploading to the parent directory now.
git pull commands are now using the quiet (-q) flag.
Editor setting for supporting adding a Make link in the editor action bar if a Makefile is detected in the cwd. Not enabled by default.
Upgrading from 0.2.0 and higher
You can upgrade from 0.2.0 and higher from within the editor. If you’d like the increased speed using the new node binaries, you’ll want to uninstall/install again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Login to the editor.
Click Update in the upper right.
Update should take about a minute.
Upgrading From 0.1.9 and lower
To install this new editor, you’ll want to completely remove your old editor, and run the installation script again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Uninstall using the following script
curl https://raw.github.com/adafruit/Adafruit-WebIDE/release/scripts/uninstall.sh | sh
Either make sure there are no rogue node processes running, or restart your Pi.
Install the new and improved WebIDE
curl https://raw.github.com/adafruit/Adafruit-WebIDE/alpha/scripts/install.sh | sudo sh
We have a new alpha release of the Rapsberry Pi WebIDE ready to go. This latest version includes a few bug fixes as well as some new settings that allow you to customize the editor. The biggest new setting is one that allows you to manually git commit and push to Bitbucket when you’re ready. You can also add a comment when doing so, to make it easier to track your changes.
The new changes for the 0.3.3 version of the WebIDE are as follows:
Add four new settings to the Settings Page
Use Soft Tabs (on or off)
Tab Size (2, 4, 6, or 8)
Show Invisibles (on or off) (shows whitespaces, tabs and spaces, etc)
Manual Git Commits and Pushes
Add ability to manually commit and push file changes. This includes adding comments.
Do a git status on the file to check if it is in need of a commit and push, and populate editor bar.
Set editor defaults to use soft tabs with a setting of 4 tab size, and show invisibles off
Add a default .gitignore file to reduce chance of .pyc files getting pushed out to bitbucket.
Fix for the terminal getting out of sync with the editor
Prevent overwriting of Adafruit project files
Update manual installation instructions
Install node.js as part of installation again.
Upgrading from 0.2.0 and higher
You can upgrade from 0.2.0 and higher from within the editor. If you’d like the increased speed using the new node binaries, you’ll want to uninstall/install again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Login to the editor.
Click Update in the upper right.
Update should take about a minute.
Upgrading From 0.1.9 and lower
To install this new editor, you’ll want to completely remove your old editor, and run the installation script again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Uninstall using the following script
curl https://raw.github.com/adafruit/Adafruit-WebIDE/release/scripts/uninstall.sh | sh
Either make sure there are no rogue node processes running, or restart your Pi.
Install the new and improved WebIDE
curl https://raw.github.com/adafruit/Adafruit-WebIDE/alpha/scripts/install.sh | sudo sh
We have a new alpha release of the Rapsberry Pi WebIDE ready to go. This latest version is primarily bug fixes, but it does have one new feature! We’ve added the ability to create folders at all levels of your project to help with organization of those more complex projects.
The new changes for the 0.3.2 version of the WebIDE are as follows:
Navigator: Add ability to create folders at all levels.
Debugger: Fix display of local vs global variables.
Terminal: Set terminal width based on containing parent, use entire width and height.
Remove file creation and uploads in Adafruit repository (it would fail anyways) project
Also, 0.3.1 had been previously released with a single fix as follows:
Fix for debugger hanging when stderr is written from script being debug.
Upgrading from 0.2.0 and higher
You can upgrade from 0.2.0 and higher from within the editor. If you’d like the increased speed using the new node binaries, you’ll want to uninstall/install again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Login to the editor.
Click Update in the upper right.
Update should take about a minute.
Upgrading From 0.1.9 and lower
To install this new editor, you’ll want to completely remove your old editor, and run the installation script again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Uninstall using the following script
curl https://raw.github.com/adafruit/Adafruit-WebIDE/release/scripts/uninstall.sh | sh
Either make sure there are no rogue node processes running, or restart your Pi.
Install the new and improved WebIDE
curl https://raw.github.com/adafruit/Adafruit-WebIDE/alpha/scripts/install.sh | sudo sh
The Raspberry Pi WebIDE includes an advanced, yet easy to use tool, to help you work through code that you’ve downloaded or written in Python.
If you haven’t used a debugger, either on the command line or in an Integrated Development Environment (IDE), hopefully this guide will help you understand why you’d want to do so, and how to effectively debug your code.
This is my first video in a new series that will cover every aspect of the Adafruit Learning System Raspberry Pi WebIDE. The WebIDE is still in the early development phase, but we are rapidly packing in great new features, and squashing bugs. Even though it is still in Alpha, this first video shows you how incredibly easy it is to install the WebIDE onto your Raspberry Pi. The goal is to release a new video each Friday to cover a new feature of the WebIDE.
We have a new alpha release of the Rapsberry Pi WebIDE ready to go. This version includes a major new feature that allows you to debug your python programs. This is a real-time step debugger, with breakpoints, output, etc.
The new changes for the 0.3.0 version of the WebIDE are as follows:
Python step debugger
Node.js update to 0.8 from 0.6 for faster navigation, and page loads.
Package node binaries with the WebIDE for faster, and easier installs
NOTE: To take advantage of the updated node binaries, and increased speed of the WebIDE, you’ll want to do an uninstall/installation, as the binaries are configured during the installation process, so updating within the editor won’t pick those changes up.
Here’s a screenshot of the debugger in action:
Upgrading from 0.2.0 and higher
You can upgrade from 0.2.0 and higher from within the editor. If you’d like the increased speed using the new node binaries, you’ll want to uninstall/install again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Login to the editor.
Click Update in the upper right.
Update should take about a minute.
Upgrading From 0.1.9 and lower
To install this new editor, you’ll want to completely remove your old editor, and run the installation script again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Uninstall using the following script
curl https://raw.github.com/adafruit/Adafruit-WebIDE/release/scripts/uninstall.sh | sh
Either make sure there are no rogue node processes running, or restart your Pi.
Install the new and improved WebIDE
curl https://raw.github.com/adafruit/Adafruit-WebIDE/alpha/scripts/install.sh | sudo sh
We have a new alpha release of the Rapsberry Pi WebIDE ready to go. This version includes a major new feature that allows you to “Visualize” the execution of your Python programs. I’ll explain how this works in a moment, but first, here is the entirety of the changelog 0.2.4:
New visualization feature for Python
Added ability to change font sizes in the editor and the terminal
New settings manager added, currently only has font size, but more can be added
Fix for long file names causing strange wrapping
The font size change was requested by a user of the WebIDE, and it’s a great idea. So far, the font settings change the editor, and terminal text sizes. You can access this setting by clicking your username in the upper left of the navigator, once you’re logged into the WebIDE. Along with this feature, we’ve added the framework for a settings section within the editor, which we’ll start expanding with more settings. This would be a good place for enabling some of the more advanced feature requests we’ve had.
Ok, now back to the visualizer…
When you open a python program in the editor there is a new button titled “Visualize” that is now enabled. Clicking this button will execute your program, and open a new section of the IDE that allows you to step through your program. You’ll be able to see how your program is interpreted..variables being created, functions called, etc. It’s not a real-time debugger, but it’s likely much more useful to teaching new programmers. It really helps you understand what is happening when you click “Run”, and see your program output. That being said, it can also help you debug, as it does show you variables, and you can step through each section of your code. All of this was possible by the open source library from pythontutor.com.
The way it works is that when you click visualize, a websocket message is sent to your Pi with the file name and relative path. Then a node.js child process is launched that executes the python tutor program with your script passed in as an argument. The master python program then opens your script as a file, and passes it in as a string to the class that will then use Python’s bdb debugger to pull out all of the useful details of the execution trace. It gathers this data, converts it to a JSON representation, and then sends it back to the WebIDE front-end. The front-end parses the JSON, and launches the ExecutionVisualizer method that knows how to display it each step of the way. The Frame and Object stacks are html tables, but using jsplumb, and d3 to draw the arrows and lines connecting everything together.
We’re hoping we can expand this in the future, such as getting it to work with relative imports, possibly adding breakpoints, or any other features that are requested that would be useful.
Upgrading from 0.2.0 and higher
To install this new editor, you’ll want to completely remove your old editor, and run the installation script again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Login to the editor.
Click Update in the upper right.
Update should take about a minute.
Upgrading From 0.1.9 and lower
To install this new editor, you’ll want to completely remove your old editor, and run the installation script again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Uninstall using the following script
curl https://raw.github.com/adafruit/Adafruit-WebIDE/release/scripts/uninstall.sh | sh
Either make sure there are no rogue node processes running, or restart your Pi.
Install the new and improved WebIDE
curl https://raw.github.com/adafruit/Adafruit-WebIDE/alpha/scripts/install.sh | sudo sh
Now that Friday is upon us, it seemed like a good time to release a few more updates to the WebIDE for the weekend! This 0.2.2 release contains primarily bug fixes, and a few new features with new installs.
Here is the entirety of the changelog:
Fix for false redirects to /setup even if bitbucket and git is already configured.
Change page title based on what directory or file is open.
Update Ace to the latest version, fixing line numbering
Detect if port 80 is in use during install, and try 3000 instead.
Set path to open editor at end of install script to actual hostname.
Install python-smbus as part of the installation process.
Add symlink for repositories to webide users home path.
Fix for closing the schedule manager breaking the editor toolbar.
Set default as using hard tabs for editing files for now.
Thank you to everyone that has submitted issues in our issue tracker. It helps immensely to track down bugs, and just make the editor better for everyone.
Upgrading from 0.2.0 and higher
To install this new editor, you’ll want to completely remove your old editor, and run the installation script again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Login to the editor.
Click Update in the upper right.
Update should take about a minute.
Upgrading From 0.1.9 and lower
To install this new editor, you’ll want to completely remove your old editor, and run the installation script again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Uninstall using the following script
curl https://raw.github.com/adafruit/Adafruit-WebIDE/release/scripts/uninstall.sh | sh
Either make sure there are no rogue node processes running, or restart your Pi.
Install the new and improved WebIDE
curl https://raw.github.com/adafruit/Adafruit-WebIDE/alpha/scripts/install.sh | sudo sh
We’ve released another version of the WebIDE to the world. If you’re already running 0.2.0, it should appear as an update.
This release has a couple of major new features. The first one is a change to the workflow of the editor. In previous releases, when you would click ‘Run’, the terminal would pop up as an overlay over your code. You would see the results, and then close the terminal to make more changes. This would continue on until your mouse button broke.
The new workflow is the following. You open your file, make a change, and then click ‘Run’. The terminal slides up from the bottom, and is displayed inline with your code, instead of as an overlay. The focus remains on the editor, so you can easily make another change, and hit run again. Another new feature to the workflow, is that when the editor is focused, you can type “Ctrl-Enter”, or “Command-Enter” (OS X), and it will execute your code.
This should make for a more enjoyable, and faster experience. There will likely be bugs, and edge cases, but if you report them, we’ll fix them as soon as possible.
Another major feature to the editor is an implementation of a scheduler. Before I go into too many details, I’ll explain a scenario that you may want to use it. Rather than running a script in a loop, consuming valuable resources, you could have it run, and then exit. Then, you would schedule it to run however often you would like, down to the minute. Let’s say you would like to monitor the humidity using your Pi over an indeterminate time period, at a rate of ‘every 10 minutes’. You could follow that tutorial, and modify the python script to remove the ‘while(True):’ loop (and the time.sleep), and just let the scheduler run it instead.
The scheduler is using an open source module to parse text of time ranges (and execute jobs!), similar to how you would think in terms of cron. We’ve included some examples to work from, and will add more over time. For example, you could write “after 1 hour”, and that would continuously run on the hour. Or, you could write “on tuesday at 11:00 am”, and your script would run at that time each week. It’s pretty flexible, but there are a few gotchas at this point (for example, “every 1 hour” doesn’t work right yet, but “every 1 hour on the first minute” does work). Your scheduled jobs are persisted in redis, and are re-initialized when you restart your Raspberry Pi, or the server.
We’ve also fixed a few more issues along the way, and you can now permanently set a port other than 80 either in the /config page, or by using the redis console manually.
Our goal is to keep the editor as clean and simple to use as possible, primarily with the Python language at this point. Most of our new features will likely focus in that direction as we have limited resources. If you do think we’re missing something critical to developing with python on the Pi, or something is bugging you, please let us know. Thank you all again for your feedback!
We’ve released a new update to the WebIDE! If you’re already running 0.2.0, you can just update next time you sign in. If you’re on 0.1.9 or lower, please follow the instructions at the bottom of the post to get up and running on the latest version. If you’re not familiar with the WebIDE yet, we have some more details at the learning system.
The two biggest features are that the terminal is now inline with the editor so that it doesn’t disrupt your editing. It makes for much faster code changes. We’ve also added in a simple job scheduler so you could run a script “every 15 minutes”, or “after 5 hours”. It’s pretty neat, surely has some bugs to be discovered, and should be interesting to see how it gets used!
Here is the entirety of the changelog:
Job scheduler for automating script execution. Run a script “every 15 minutes”, for example.
Schedule manager for toggling jobs, and deleting jobs.
Move terminal inline with the editor for faster run/code workflow.
Focus editor when running code.
Notifications while running scripts in editor bar.
Focus the editor in many more situations, for example, when opening a file, it will give focus to the editor.
Add “Command-Enter”, or “Ctrl-Enter” command to run scripts, this is in addition to “Command-S” and “Ctrl-S” to save when editor is focused.
Update Bitbucket logos with new design.
Add option to change port number in /config, and persist in Redis, surviving updates.
Ensure only one instance of restartd is running during installation
Add ALS Guide: tag to the initial Readme
Message System for various notifications
Explicitly set is_private when creating repositories
Thank you to everyone that has submitted issues in our issue tracker. It helps immensely to track down bugs, and just make the editor better for everyone.
Upgrading from 0.2.0
To install this new editor, you’ll want to completely remove your old editor, and run the installation script again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Login to the editor.
Click Update in the upper right.
Update should take about a minute.
Upgrading From 0.1.9 and lower
To install this new editor, you’ll want to completely remove your old editor, and run the installation script again.
Ensure that your code is safely saved in your repository at bitbucket.org.
Uninstall using the following script
curl https://raw.github.com/adafruit/Adafruit-WebIDE/release/scripts/uninstall.sh | sh
Either make sure there are no rogue node processes running, or restart your Pi.
Install the new and improved WebIDE
curl https://raw.github.com/adafruit/Adafruit-WebIDE/alpha/scripts/install.sh | sudo sh