What is the best Python project structure for a non-trivial end-user desktop application?

  • Modular Design: Code is split into app (core) and UI components. The modular design helps scale the project as new features are added.
  • Build and Packaging (build/): Keeps build scripts for packaging and distribution (like using PyInstaller for desktop applications).
  • Clear Separation: Configuration and test folders remain separate for clarity.