Overview
In addition to its regular beverage assortment, a Trinkgut store also offers rental items for events – including beer benches, table sets, and various party equipment. The entire rental process previously ran exclusively on handwritten notes and binders. This regularly led to errors, double bookings, and a high manual coordination effort.
My approach was to develop an internal administration tool that maps the complete rental and ordering process digitally. Employees should be able to check availability, create orders, and send confirmations to customers directly while on the phone – all through a central interface.
The result is a lean but powerful system that completely replaces the paper chaos. Double bookings are a thing of the past, and the entire workflow – from inquiry to return – is now traceable and efficiently organized.
My Role
I implemented the project as a fullstack developer in solo development from July to September 2025. That meant: requirements analysis together with the client, design of the database and API architecture, development of frontend and backend, as well as deployment and go-live. From the first conversation to production use, the entire technical responsibility was mine.
Tasks
- Availability system with real-time checks: Development of logic that checks for any given period whether rental items are available in the desired quantity – taking existing reservations into account.
- Order management with automatic dispatch: Creation and management of orders including automatic email confirmation to customers upon completion.
- Product management for regular items: Extension of the system with management for the beverage assortment, so that classic product orders can also be handled.
- Combined orders: Ability to combine rental items and regular products in a single order.
- React frontend for phone use: A clear user interface that enables employees to process customer inquiries quickly and without errors directly during the phone call.
- FastAPI backend with database logic: Construction of a clean API layer with FastAPI and a PostgreSQL database as a reliable foundation.
Technical Highlights
Period-based availability checks: The central challenge was a performant check of whether an item is available in a given period. Since rental items exist in different quantities and booking periods can overlap, pure calendar logic was not sufficient. The solution works with overlapping interval queries at the database level and delivers reliable results in real time.
Dual order model: The system had to merge two fundamentally different item types – rental items bound to a time period and classic products without returns – into a unified ordering process. The database architecture was designed so that both types can be flexibly combined without unnecessarily complicating the business logic.
Automated deployment: A CI/CD pipeline was set up via GitHub Actions that deploys the backend to AWS. This allowed updates to be brought into production quickly and reliably, without manual effort.