In order to get the most out of the workshop, you should familiarize yourself with these materials before the workshop.
During the workshop, you will use git to collabortively develop chutes and deploy them to a Paradrop device.
- Sign up for a github account if you do not have one.
- If you have never used git before, some of the commands can be unintuitive or behave very differently from other version control systems. Try out this 15-minute tutorial.
We will build a simple Node.js application using Express during the workshop, and it will help if you have seen Express.js before.
- Try out their Hello World, and you will be good to go.
Paradrop uses Docker to run chutes in what are called "containers". These containers include all of the chutes's dependencies and provide some isolation from other apps running on the same device but have lower overhead than virtual machines. We will not be working with Docker directly during this workshop, but some knowledge of how Docker works will help you later on when you are debugging or developing more advanced applications.
- Start with What is Docker? for an overview.
- Look through the Getting Started guide. The most important section for developing with Paradrop is the one on writing a Dockerfile.
- Become familiar with the Docker command line utility. You will not be able to try these commands on your own computer unless you install Docker first. However, you will have the chance to interact with Docker on the Paradrop routers, so it will help to be familiar with it.
- (Optional) For the very motivated, there are three one-hour instructional videos.
Your group will work on several Paradrop chutes during the workshop. We have posted starter projects on github that you can fork and start working.
This chute implements a motion detection system using a wireless camera.
We will not be working on the web app portion of the chute during this tutorial, but if you are curious, the original source code is available as well.
This chute lets people post photos to a local image board that is visible to whoever is connected to your Wi-Fi access point. We will build this chute from scratch by following the tutorial.
This chute is a multiplayer action game similar to agar.io.
The following chutes have been used in previous workshops and serve as examples of other applications that can be built to run on Paradrop.
This chute runs periodic network tests and displays the results in a webpage.
This chute runs a WiFi access point with content filtering and configurable blocking.
Parental Control Starter Chute
This chute, developed by a previous workshop attendee, sets up a Wi-Fi AP that directs all traffic through Tor.
The Paradrop routers have SSH access enabled. You can use this to inspect the running state and filesystem contents of your chutes. You will be given login details during the workshop.
sudo docker ps --all
If you have a chute installed and running, you should notice a line with the chute name.
sudo docker exec -it <chute name> /bin/bash
With this shell, you can read and modify files inside the chute. If you wish to make your code changes permanent, remember to add them to your git repository.
Please complete this anonymous survey at the end of the tutorial. It will only take a few minutes, and your feedback will really help us to improve ParaDrop for future developers.