Desktop programCustom Programs

A small desktop program in Python with a window: a ZIP of code, a README and how to build an .exe

Usually ready in 15 minutesRevisions includedQuality check
Packages
Payment protectionDetails
  • Revisions within the package are free.
  • If you do not respond within 3 days of delivery, the work is accepted automatically.

The money is reserved when you pay and released only once you accept the work.

A small desktop program in Python with a window: a ZIP of code, a README and how to build an .exe

Example result

Example for the Standard package

Desktop program: invoice maker for a one-person bookkeeping service

The windows

  1. Invoices: the list of past invoices with number, client, date and total; buttons New, Open and Save as PDF.
  2. New invoice: client from a drop-down list, lines with description, hours and rate, tax rate, and the total updated as you type.
  3. Clients: name, address and email, added once and picked from the list afterwards.

A part of the code

def update_total(self, *_):
    """Adds up the lines and the tax and shows the total under the table."""
    subtotal = sum(line.hours * line.rate for line in self.lines)
    tax = round(subtotal * self.tax_rate.get() / 100, 2)
    self.subtotal_label.config(text=f"Subtotal: {subtotal:,.2f}")
    self.tax_label.config(text=f"Tax: {tax:,.2f}")
    self.total_label.config(text=f"Total: {subtotal + tax:,.2f}")

In the archive

  • invoice_maker.py, the program, about 700 lines;
  • invoices.db, made on the first run, which keeps the clients and invoices;
  • settings.example.ini for your name, address and invoice number format;
  • requirements.txt with the one extra library, reportlab, which writes the PDF;
  • README: how to install Python, start the program and build an .exe with PyInstaller.

The program runs on the client's own computer. We do not build installers, sign the program or publish it.

Client: a freelance bookkeeper who writes 20–30 invoices a month in a word processor. Task: a small program with a window: pick a client, add lines, see the total with tax, save the invoice as a PDF, and keep the list of clients. Standard package: up to 3 windows and 800 lines, data in SQLite.

The client and all details are made up.

About this service

A small program for Windows, macOS or Linux that does one job in its own window: an invoice maker, a stock list, a time tracker, a price calculator, a file organizer or a tool that processes a folder of pictures. Describe what it should do and the fields, buttons and results you need, and attach examples or sketches if you have them. We write it in Python with Tkinter, the window toolkit that comes with Python, so it needs few or no extra libraries. You get a ZIP archive with the code and a README: how to install Python, run the program and, if you like, build an .exe with PyInstaller. The program runs on your own computer. We do not build installers, sign the program or publish it anywhere, and we do not run it on your data, so try it on a copy first. Passwords and keys stay out of the code.

What is included

  • What you getA ZIP archive with the Python code, a README with step-by-step instructions to install Python, run the program and build an .exe with PyInstaller, and where needed an example data or settings file; the code is also shown on the order page. From Standard, settings and data saved to a CSV file or an SQLite database; in Premium, export of results to a file and an error log.
  • A real windowButtons, fields, lists and menus with Tkinter
  • Few extras to installPython's standard library wherever possible
  • Your data stays with youFiles and a database on your own computer
  • Build an .exeOptional steps with PyInstaller in the README
  • Readable codeWith comments, easy to change later

How it works

  1. 1
    TaskYou describe the windows, the fields and what the program does
  2. 2
    CodeWe write the program and the README
  3. 3
    Try itYou run it on your computer with a copy of your data
  4. 4
    ChangesYou ask for changes within your package and send any error message

What we need from you

What the program should do, window by window: the fields and buttons, what happens on each click, what it saves and what it should produce (a file, a list, a calculation). Your system (Windows, macOS or Linux) and whether you want an .exe. Example files help a lot: a few rows of your data as CSV or Excel, a sample of the result, or a sketch or screenshot of how the window should look. Never send real passwords or keys.

We will ask you:

  • What should the program do?
  • Which windows, fields and buttons do you need?
  • What data does it keep, and where?
  • Which system will it run on?
  • Anything it must never do

Compare packages

PackagesBasic1 window, up to 300 lines$25StandardUp to 3 windows, 800 lines$49PremiumUp to 6 windows, 1,500 lines$89
Deadline1 day2 days3 days
Revisions123
Codeup to 300 linesup to 800 linesup to 1,500 lines
Windows or screens1up to 3up to 6
Featuresup to 3up to 6up to 10
Settings and saved dataNoCSV or SQLiteCSV or SQLite
Export and error logNoNoYes
README with .exe build stepsYesYesYes
Order BasicOrder StandardOrder Premium

Payment protection

You pay when you order, but the money is released only for accepted work.

  • Fixed priceThe package price does not change after you pay.
  • The money is reservedWhen you pay, the amount is only reserved. It is released to the service once you accept the work.
  • Checked before deliveryEvery result goes through a quality check before it reaches you, and you see it on the order page before accepting it.
  • Free revisionsAsk for changes within your brief as many times as the package allows.
  • Acceptance after 3 daysIf within 3 days of delivery you neither accept the work nor ask for changes, it is accepted automatically. If you write in the order chat after delivery, the order waits; once we answer, we may start the 3 days again and will say so in the chat.
  • Redo or a full refundIf the result does not match your brief and the revisions did not fix it, or the work takes more than twice its deadline, write in the order chat: we will redo the work or refund the payment in full.
How it works →

Questions and answers

Do I need to know programming?

No. The README explains, step by step, how to install Python once, run the program with a double click or one command and, if you want, build an .exe.

Will I get an installer or a signed program?

No. You get the code and the steps to build an .exe yourself with PyInstaller. We do not build installers, sign the program or publish it in any store, so Windows or macOS may warn you the first time you open it.

Will you run the program for me?

No. It runs on your computer, on your own data, so your files stay with you. Try it on a copy of your data first.

Why Python and Tkinter?

Tkinter comes with Python, so the program needs few or no extra libraries and runs on Windows, macOS and Linux. The windows look simple and clean rather than flashy.

What if it does not work on my computer?

Send us the error message or a screenshot on the order page and ask for a change within your package. Most problems are a missing library or a file path, which the README covers.

Did not find your answer?

Packages