Skip to content

MihailCosmin/cookiecutter-python-gui-application

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Cookiecutter Python GUI Application

Cookiecutter template for Python GUI Applications based on cookiecutter-pypackage: https://github.com/audreyfeldroy/cookiecutter-pypackage.

This template is mostly intended for beginners in GUI development using Python, but it can be used by experienced developers also.

Besides providing the template and the needed tools for GUI development, this repository also comes with demos for most used python GUI frameworks, in order to get you started, if you are a beginner.

Features

  • Free software: BSD license
  • Dependency tracking using poetry
  • Pytest runner: Supports unittest, pytest, nose style tests and more
  • Travis-CI: Ready for Travis Continuous integration testing
  • Tox testing: Setup to easily test for python 2.6, 2.7, 3.3 and PyPy_
  • Sphinx docs: Documentation ready for generation with, for example, ReadTheDocs
  • Wheel support: Use the newest python package distribution standard from the get go

Supported GUI Frameworks

Demos:

  • Qt family (PyQt5, PyQt6, PySide2, PySide6):

Qt Demo

  • Tkinter:

Text Editor

  • CustomTkinter:
sample.mp4
  • PySimpleGUI:

PySimpleGUI

  • wxPython:

Web Browser

Toga

  • Kivy:

Kivy

Frameworks Comparison

TODO: Add comparison table, main features

Usage

Generate a Python GUI Application project:

cookiecutter https://github.com/MihailCosmin/cookiecutter-python-gui-application.git

Not Exactly What You Want?

Don't worry, you have options:

Similar Cookiecutter Templates

Fork This

If you have differences in your preferred setup, I encourage you to fork this to create your own version. Once you have your fork working, add it to the Similar Cookiecutter Templates list with a brief explanation. It's up to you whether or not to rename your fork.

Or Submit a Pull Request

I also accept pull requests on this, if they're small, atomic, and if they make my own packaging experience better.