← Blog
Engineering · · 8 min read

Building an Offline Cinema ERP on a Raspberry Pi

How we deployed a full LEMP stack on a €60 device and solved Greek thermal printing along the way.

When Tria Asteria Cinema approached us, they had a clear constraint: no cloud, no monthly costs, and it has to work when the internet goes down. Challenge accepted.

Why a Raspberry Pi?

The cinema is a small operation: 4 screens, a single POS terminal, and a tight budget. Paying €50+/month for cloud hosting didn't make sense when a €60 Raspberry Pi 4 could handle the load. We installed Ubuntu Server, set up NGINX, MySQL, and PHP (LEMP stack), and deployed the Laravel application directly on the device.

The Greek Printing Problem

ESC/POS thermal printers (the EPSON TM-T20III in our case) don't natively support Greek characters. The standard code pages don't include the Greek alphabet.

We solved this by building a custom encoding layer that converts Greek UTF-8 text to the printer's Code Page 737, handles accents, and manages line wrapping for receipt formatting. The result: perfect Greek receipts printed in under 1 second.

Remote Access Without a Static IP

The cinema doesn't have a static IP, and opening ports wasn't an option. We used Cloudflare Tunnel to create a secure, outbound-only connection from the Pi. The owner can access the admin panel from anywhere: no VPN, no port forwarding.

Results

The system has been running for 8 months without a single day of downtime. Monthly hosting cost: €0. Ticket print time: under 1 second. The cinema staff learned the system in a single afternoon.

NEXT STEP

Have a project in mind?

Start a conversation →