Schreinerprogramm (Joinery Program)

Working Time Managing Program

Basic idea

The purpose of the “Schreinerprogramm” is to have a program to store and manage the working time of the workers in a joinery for each project in the joinery. So when writing the bill for a project, the total needed working time can just be looked up and does not have to be calculated from hundreds of different sheets of paper.

The idea was initially designed for the joinery of my father but can surely be applied to other joineries and craft businesses as well. The underlying problem is of course that the working hours of the workers are still often tracked by writing them on paper by hand, which results in much effort when calculating the working hours for the project bills.

General Architecture

As can be seen in the architecture diagramm, workers have access to a mobile app, where they can track their working hours. The app communicates with a backend service, that stores the tracked data. With the SP-Client, all the Data of the workers can be accessed to check the hours invested into the projects. The database scheme itself looks like the following:

Deployment

The system is deployed behind a reverse proxy on a RaspberryPi 5 in the office of my dad. The mobile app for the workers can be easily accessed via a unique QR code. With that setup, the system is successfully on production, and makes the paperwork of the joinery a bit easier!

Technologies

  • Database:
    • MySQL
  • Backend:
    • Java Spring Boot
  • Mobile App:
    • VueJS
    • PWA
  • SP-Client:
    • JavaFX
  • Deployment:
    • Docker
    • Nginx