The aim of the task was to renovate the school photobooth. As part of the assignment, the solution involved developing an Android app with the video input sourced from a Raspberry Pi Cam. I created a user-friendly wireframe and mockup using Adobe Xd, which I then implemented using Android Studio (Java). The app is designed to trigger the Raspberry Pi camera to capture a photo. Additionally, through an API, the integrated printer immediately prints the image if the customer chooses to do so.

Concept
1. The Android App communicates to the rasp - the user is able to use the photobooth. The app is coded in Java and has following Frameworks:
Glide: to load images form the webserver (nginx)
Libvlc: to recieve and display the stream from the Raspberry Pi
Retrofit2: to send and process API requests
Libvlc: to recieve and display the stream from the Raspberry Pi
Retrofit2: to send and process API requests
2. The Rasp is responsible for taking the images, open a WLAN (for the communication with the android app) and the communication with the printer. The code and configuration on the Raspberry Pi is written in Phyton and has following Implementations:
API (DjangoRestFramwork): Captures pictures and does database requests
SQLITE3: Databasesystem
Nginx: Webserver where the captured images are uploaded
SQLITE3: Databasesystem
Nginx: Webserver where the captured images are uploaded