Skip to content

Latest commit

 

History

18 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PreisManager

Python Windows MIT License Tkinter Inno Setup PyInstaller

A lightweight Python desktop application for calculating minimum selling prices based on purchase price, VAT, marketplace fees, shipping costs and optional B-stock discounts.

PreisManager was primarily developed as a personal learning and test project while implementing a small real-world pricing tool. Although it can be used for simple calculations on platforms such as eBay or Otto, it is not intended to replace professional pricing or accounting software.

The project demonstrates the development of both a graphical desktop application and a classic console application using Python.


Note

The graphical user interface and the Retro Mode are currently available only in German.

The application was originally written for personal use and therefore uses German labels throughout the interface.

The source code and this documentation are written in English to remain understandable for an international audience.


Overview

PreisManager calculates a recommended minimum selling price based on several configurable values.

The calculation supports:

  • Purchase price
  • Shipping costs
  • VAT
  • Marketplace fees
  • Optional B-stock discount

The project contains two independent versions:

  • Graphical Desktop Application
  • Retro Console Mode

Both versions use the same calculation principle while offering different user experiences.


Background

Unlike many calculator examples created while learning a programming language, PreisManager was designed around a small real-world workflow.

The practical time saving compared to a normal calculator is relatively small, but the project served as an opportunity to practice Python by designing a complete application from planning to release.

The goal was never to build a professional pricing solution.

Instead, the focus was on learning software structure, separating logic from the graphical interface, creating a Windows installer and publishing a complete open-source repository.


Features

  • Graphical desktop interface
  • Classic Retro console mode
  • 19% VAT calculation
  • 7% VAT calculation
  • Custom VAT values
  • Custom marketplace fees
  • Custom B-stock discount
  • Shipping cost support
  • Windows installer
  • Open-source project

Screenshots

grafik grafik grafik grafik grafik grafik

Graphical Application

The graphical version provides an easy-to-use desktop interface for entering all required values.

After pressing the calculate button, the recommended minimum selling price is displayed immediately.

The interface was intentionally kept simple to focus on the calculation itself.


Retro Mode

The Retro Mode is a special part of this repository.

It was intentionally preserved because it documents my personal programming knowledge at the time the project was created.

The console application, menu structure, calculation logic and overall program flow were written independently without using generated source code.

External resources were only used for normal debugging tasks such as understanding syntax errors or Python error messages.

Although the graphical version offers a much better user experience, the Retro Mode remains part of the repository as a record of my learning progress.


How it Works

The application follows a simple workflow.

  1. Enter the purchase price.
  2. Enter shipping costs.
  3. Select or enter VAT.
  4. Enter marketplace fees.
  5. Optionally apply a B-stock discount.
  6. Calculate the recommended minimum selling price.

Technologies

  • Python
  • Tkinter
  • PyInstaller
  • Inno Setup

Requirements

  • Python 3.11 or newer
  • Microsoft Windows 10 or Windows 11

Install all required packages using:

pip install -r requirements.txt

Running

Clone the repository:

git clone https://github.com/Vipe-tools/PreisManager.git

Open the project directory:

cd PreisManager

Start the graphical version:

python PreisManager.py

Start the Retro Mode:

python PreisManagerRetro.py

Build

Executable files can be created using PyInstaller.

The Windows installer is created using Inno Setup.

Installer configuration:

Inno/PreisManager_Setup.iss

Project Structure

PreisManager/
├── Inno/
│   └── PreisManager_Setup.iss
├── assets/
│   └── PM.ico
├── gui/
│   ├── calculator_view.py
│   ├── main_window.py
│   └── menu.py
├── logic/
│   ├── price_calculator.py
│   └── retro_launcher.py
├── LICENSE
├── PreisManager.py
├── PreisManagerRetro.py
├── README.md
└── requirements.txt

Tested Platforms

The application has been tested on:

  • Windows 10
  • Windows 11

Windows is currently the only officially supported operating system.

The graphical application, Retro Mode and Windows installer were specifically developed and tested for Windows.

Although parts of the Python source code may work on Linux or macOS, cross-platform compatibility has not been tested and is not guaranteed. In particular, the Retro Mode currently contains Windows-specific console functionality (such as console color handling) that may not work correctly on other operating systems.


Development Notes

PreisManager was developed as a personal learning and test project.

The objective was to gain practical programming experience by completing a small but fully functional desktop application instead of creating isolated code examples.

The project covers the complete workflow of planning, implementation, graphical interface development, console programming, packaging, installer creation and GitHub publication.


Purpose

PreisManager is intentionally a small project.

The software solves one specific task instead of trying to become a complete pricing system.

Its primary purpose is to document my programming progress while providing a practical tool that can be used whenever simple selling price calculations are required.


Project Status

The project is considered complete.

No major new features are currently planned.

Small improvements or bug fixes may still be added in the future.


License

This project is licensed under the MIT License.

You are free to use, modify, distribute and use this software commercially, provided that the original copyright notice and license remain included.

See the LICENSE file for further information.


Author

Developed by Vipe.

PreisManager was created as a personal software development project to improve my Python skills while building a complete desktop application from start to finish.

If you find this project useful, feel free to fork it, modify it or adapt it for your own projects.

About

A lightweight Python desktop application for calculating minimum selling prices with GUI and Retro Console Mode.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages