All Projects → napari → Magicgui

napari / Magicgui

Licence: mit
build GUIs from python functions, using magic.

Programming Languages

python
139335 projects - #7 most used programming language

Labels

Projects that are alternatives of or similar to Magicgui

Popup Dict
Linux 下的划词翻译小工具
Stars: ✭ 69 (-13.75%)
Mutual labels:  gui
Swiftgui
SwiftGUI is an API inspired by SwiftUI DSL, using Dear ImGui as renderer and running on macOS 10.13+ and iOS 11+
Stars: ✭ 74 (-7.5%)
Mutual labels:  gui
Corewar
School 42 project // Implementation of programming game “Core War” [Champions + Assembler + Disassembler + Virtual Machine + Visualizer]
Stars: ✭ 76 (-5%)
Mutual labels:  gui
Asap app imgui
Starter project for portable app with optional GUI (GLFW/ImGui) and a rich builtin debug UI. Includes docked windows, log viewer, settings editor, configuration load/save, etc...
Stars: ✭ 70 (-12.5%)
Mutual labels:  gui
Skin.refocus
reFocus, a skin for Kodi
Stars: ✭ 72 (-10%)
Mutual labels:  gui
Pydiff
A simple GUI for python's difflib to compare files and directories
Stars: ✭ 74 (-7.5%)
Mutual labels:  gui
Nitroshare Desktop
Network file transfer application for Windows, OS X, & Linux
Stars: ✭ 1,150 (+1337.5%)
Mutual labels:  gui
Ptdesigner
Library and GUI tool for designing and generation of procedural textures, made as a part of my Bachelor thesis.
Stars: ✭ 77 (-3.75%)
Mutual labels:  gui
Pypokergui
GUI application for PyPokerEngine
Stars: ✭ 72 (-10%)
Mutual labels:  gui
Pyrustic
Lightweight framework and software suite to help develop, package, and publish Python desktop applications
Stars: ✭ 75 (-6.25%)
Mutual labels:  gui
Wxformbuilder
RAD tool for wxWidgets GUI design
Stars: ✭ 1,167 (+1358.75%)
Mutual labels:  gui
Ariang Native
A better aria2 desktop frontend than AriaNg, containing all features of AriaNg and more features for desktop.
Stars: ✭ 1,176 (+1370%)
Mutual labels:  gui
Morda
🐶 GUI library in C++
Stars: ✭ 75 (-6.25%)
Mutual labels:  gui
Silx
silx toolkit
Stars: ✭ 69 (-13.75%)
Mutual labels:  gui
Nplusminer
NPlusMiner + GUI | NVIDIA/AMD/CPU miner | AI | Autoupdate | MultiRig remote management
Stars: ✭ 75 (-6.25%)
Mutual labels:  gui
Hitomi Downloader
🍰 Desktop application to download images/videos/music/text from Hitomi.la and other sites, and more.
Stars: ✭ 1,154 (+1342.5%)
Mutual labels:  gui
Moonnuklear
Lua bindings for Nuklear
Stars: ✭ 74 (-7.5%)
Mutual labels:  gui
Abr Broadcaster
A real time encoder for Adaptive Bitrate Broadcast
Stars: ✭ 80 (+0%)
Mutual labels:  gui
Chrysalisp
Parallel OS, with GUI, Terminal, OO Assembler, Class libraries, C-Script compiler, Lisp interpreter and more...
Stars: ✭ 1,205 (+1406.25%)
Mutual labels:  gui
Examples
Learn to create a desktop app with Python and Qt
Stars: ✭ 1,196 (+1395%)
Mutual labels:  gui

icon

License Version conda-forge Python Version Build Status codecov

magicgui: build GUIs from functions, using magic.

📖 Docs

Installation

magicgui uses qtpy to support both pyside2 and pyqt5 backends. However, you must have one of those installed for magicgui to work.

install with pip

pip install magicgui[pyqt5]
# or
pip install magicgui[pyside2]

or with conda:

conda install -c conda-forge magicgui pyqt  # or pyside2 instead of pyqt

ℹ️ If you'd like to help us extend support to a different backend, please open an issue.

Basic usage

from magicgui import magicgui
from enum import Enum

class Medium(Enum):
    Glass = 1.520
    Oil = 1.515
    Water = 1.333
    Air = 1.0003

# decorate your function with the @magicgui decorator
@magicgui(call_button="calculate", result_widget=True)
def snells_law(aoi=30.0, n1=Medium.Glass, n2=Medium.Water, degrees=True):
    import math

    aoi = math.radians(aoi) if degrees else aoi
    try:
        result = math.asin(n1.value * math.sin(aoi) / n2.value)
        return math.degrees(result) if degrees else result
    except ValueError:
        return "Total internal reflection!"

# your function is now capable of showing a GUI
snells_law.show(run=True)

snells

But that's just the beginning! Please see Documentation for many more details and usage examples.

Contributing

Contributions are welcome!

Please note: magicgui attempts to adhere to strict coding rules and employs the following static analysis tools to prevent errors from being introduced into the codebase:

To prevent continuous integration failures when contributing, please consider installing pre-commit in your environment to run all of these checks prior to checking in new code.

pre-commit install
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].