It provides a web interface for controlling a 3D printer (RepRap, Ultimaker, ...). It currently allows
- uploading .gcode files to the server and managing them via the UI
selecting a file for printing, getting the usual stats regarding filament length etc
starting, pausing and canceling a print job
while connected to the printer, gaining information regarding the current temperature of both head and bed (if available) in a nice shiny javascript-y temperature graph
while printing, gaining information regarding the current progress of the print job (height, percentage etc)
reading the communication log and send arbitrary codes to be executed by the printer
moving the X, Y and Z axis (jog controls, although very ugly ones right now)
changing the speed modifiers for inner & outer wall, fill and support
optional: visual monitoring of the printer via webcam stream integrated into the UI (using e.g. MJPG-Streamer)
optional: creation of timelapse recordings of the printjob via webcam stream (using e.g. MJPG-Streamer) -- currently two timelaspe methods are implemented, triggering a shot on z-layer change or every "n" seconds
If you want to add a webcam for visual monitoring and timelapse support, you'll need a powered USB hub.