All Projects → patrickmoffitt → Python Example

patrickmoffitt / Python Example

Licence: mit
How to Build an Electron GUI for a Python Module

Programming Languages

javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Python Example

Dockdash
Docker dashboard using Termui
Stars: ✭ 96 (-11.11%)
Mutual labels:  gui
Ahk Rare
My collection of rare and maybe very useful functions
Stars: ✭ 101 (-6.48%)
Mutual labels:  gui
Reflex Dom Inbits
A tutorial for reflex-dom with small code bits
Stars: ✭ 105 (-2.78%)
Mutual labels:  gui
Kflash gui
Cross platform GUI wrapper for kflash.py (download(/burn) tool for k210)
Stars: ✭ 99 (-8.33%)
Mutual labels:  gui
Lipi
A simple static blog generator.
Stars: ✭ 100 (-7.41%)
Mutual labels:  gui
Easyfxml
A collection of tools and libraries for easier development on the JavaFX platform!
Stars: ✭ 102 (-5.56%)
Mutual labels:  gui
Spamsms
SPAM SMS (-UPDATE 2020!-)
Stars: ✭ 94 (-12.96%)
Mutual labels:  gui
Hamster Gtk
A GTK3 time tracker. Powered by 'hamster-lib'
Stars: ✭ 106 (-1.85%)
Mutual labels:  gui
Pytkgen
Create Tkinter GUIs from JSON definition files.
Stars: ✭ 100 (-7.41%)
Mutual labels:  gui
Qtquickvcp
A Virtual Control Panel for Machinekit written in Qt/C++/QML
Stars: ✭ 104 (-3.7%)
Mutual labels:  gui
Mgui
Python module for cleaner maya GUI layout syntax
Stars: ✭ 99 (-8.33%)
Mutual labels:  gui
Polished Map
A map and tileset editor for pokecrystal, pokered, and hacks based on them like Polished Crystal. Written in C++ with FLTK.
Stars: ✭ 100 (-7.41%)
Mutual labels:  gui
Whatsappbot
Send messages to any person in any time how much you want.
Stars: ✭ 104 (-3.7%)
Mutual labels:  gui
Blender Toolbox Qt
Attempt to recreate a blender like toolbox in Qt
Stars: ✭ 98 (-9.26%)
Mutual labels:  gui
Scala Swing
Scala wrappers for Java's Swing API for desktop GUIs
Stars: ✭ 105 (-2.78%)
Mutual labels:  gui
Nordpy
A gui application to connect automatically to the recommended NordVPN server
Stars: ✭ 95 (-12.04%)
Mutual labels:  gui
Python Examples
Python examples from my answers on Stackoverflow and other short scripts.
Stars: ✭ 101 (-6.48%)
Mutual labels:  gui
Jquery Querybuilder
jQuery plugin offering an interface to create complex queries
Stars: ✭ 1,499 (+1287.96%)
Mutual labels:  gui
Horus ui
HorusUI Immediate Mode Graphical User Interface
Stars: ✭ 106 (-1.85%)
Mutual labels:  gui
Invmenu
A PocketMine-MP virion to create and manage virtual inventories!
Stars: ✭ 104 (-3.7%)
Mutual labels:  gui

Logo How to Build an Electron GUI for a Python Module

This project demonstrates how to display the output of a Python module in Electron. The demonstration code performs the following features across platforms 1:

  • Detect if Python 3+ is installed
  • Detect if application specific Python module dependencies are installed
  • List installed, top-level, Python modules in an Electron BrowserWindow

September 2020 Update

  • Revised the Python code to version 3.8 best practices.
  • Revised the Electron code to version 10.1
  • Tested the project on Mac OS 10.15, Ubuntu 20.04, and Windows 10.

Quick Code Tour

  • The code entry point is in package.json under the key "main". The value is "main.js"
  • main.js creates a BrowserWindow and loads index.html.
  • index.html displays a button to click to get a list of top-level Python modules and loads renderer.js.
  • renderer.js loads jQuery and provides an event handler for the button. It also checks for Python 3+ and dependencies. On Win32 it also unpacks it's Python modules from the Electron Asar and places them in app.getPath('userData'). See controller.initPythonWin32() for more.

Animated Screenshot

Demo

1 Tested on Mac OS 10.15, Ubuntu 20.04, and Windows 10

Project Status

This project has been archived and is no longer being maintained by the author.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].