Introduction: Raspberry Pi PhotoBooth: HTML5 & NodeJS

About: Web Designer & Developer by trade, but overwhelmed with a passion to Make things.

An HTML5 and NodeJS photobooth with live preview and custom borders.

This project started as something I built for my daughter's school dance. I wanted something fun for her and her friends to remember the event (which was the last time they would all be together at their school). It turned into a shameless promotion for the company I work at (where I was hoping that visiting clients would use the photobooth to document their visit to our office). Please, download and try it yourself.

More information can be found at
This assumes you have a Raspberry Pi dedicated to this project. Once the WiFi AP is configured, the Pi will no longer have internet access unless plugged in via Ethernet. Note: that you must have a display of some sort connected to the Pi. And it must be set to boot into the GUI not headless. After setting up your Pi (with or without a touchscreen) and plugging in the webcam via USB. Just follow the instructions. After the install: The quick install will take care of the required dependencies (nodejs, php, chromium, etc), as well as setup the chromium-browser kiosk and the Wifi AP. Once the pi reboots, the Wifi AP will be available via SSID: PhotoBooth Password: photoboothpass The Pi should boot in chromium kiosk full screen (first launch will require you to `Allow Access` to the camera)... Any computer on the PhotoBooth network can also visit (be sure to use https) to become an extra PhotoBooth in the network (As long as there is a camera attached). In addition, any computer on the PhotoBooth network can also visit (leave as http). This page will allow access to all the photos taken (giving you the ability to print or delete). To add you own borders, you can simply edit booth.html found at /var/www/html/, look for the `li` tags that contain the border images (option-1.png, option-2.png, etc). Add you own `li` tags, keeping the data-option attribute unique. Use one of the provided border in /var/www/html/images as a guide for size.


  1. Raspberry Pi
  2. Any USB Webcam (not an official Rpi Cam)
  3. A touch screen, or any display for the Pi

Step 1: Download From Github

Download the project @ into a directory of your choosing.

Step 2: Unzip

Unzip (if downloaded as zip) and navigate to the project directory via the command line: `cd project`

Step 3: Elevate Your Permissions

Become root: `sudo bash`

Step 4: Run the Quick Installer

Run this command `sh`