© Made by Adam Bellanger

Desktop app that converts any document to PDF and files it in the customer record of the Bob! Desk maintenance software.

Stack

Languages
  • Python
Front-end
  • React
  • Tailwind CSS
Back-end
  • Flask
Tools & APIs
  • LibreOffice
  • PyInstaller

Context

The natural follow-up to TéléDesk at Socacom: technicians have to attach documents (Word, Excel, photos, PDFs) to customer records in Bob! Desk, one at a time and in the right format.

Role

Solo design and development, on the same technical foundation and design as TéléDesk.

Architecture

  1. Dropped files

    .docx, .xlsx, .pdf, images

  2. React interface

    pywebview window

  3. Local Flask API

    :7422, worker + log

  4. PDF conversion

    LibreOffice, Pillow

  5. Bob! Desk API

    Documents in the customer record

Same technical foundation as TéléDesk, also shipped as a standalone .exe.

Challenges

Converting mixed formats to PDF without a heavy install (LibreOffice driven from the command line with an isolated profile, Pillow for images), keeping credentials out of the Git repository in the user folder, and tracking upload progress in real time.

Outcome

A standalone Windows .exe: drop the files, pick the customer, and everything is converted then uploaded, with a test mode that simulates the upload without writing anything.

Highlights

  • Drag and drop: .docx, .xlsx, .pdf, images
  • PDF conversion with LibreOffice and Pillow
  • Dry-run mode and live log
Next projectPhoto album →