NiceGUI est un framework d'interface utilisateur basé sur Python facile à utiliser, qui apparaît dans votre navigateur Web. Vous pouvez créer des boutons, des boîtes de dialogue, du Markdown, des scènes 3D, des tracés et bien plus encore.
Il est idéal pour les applications micro-Web, les tableaux de bord, les projets de robotique, les solutions de maison intelligente et les cas d'utilisation similaires. Vous pouvez également l'utiliser en développement, par exemple pour peaufiner/configurer un algorithme d'apprentissage automatique ou régler des contrôleurs de moteur.
NiceGUI est disponible sous forme de package PyPI, d'image Docker et sur conda-forge ainsi que GitHub.
python3 -m pip install nicegui
Écrivez votre jolie interface graphique dans un fichier main.py
:
from nicegui import ui
ui . label ( 'Hello NiceGUI!' )
ui . button ( 'BUTTON' , on_click = lambda : ui . notify ( 'button was pressed' ))
ui . run ()
Lancez-le avec :
python3 main.py
L'interface graphique est désormais disponible via http://localhost:8080/ dans votre navigateur. Remarque : NiceGUI rechargera automatiquement la page lorsque vous modifierez le code.
La documentation est hébergée sur https://nicegui.io/documentation et propose de nombreuses démos en direct. L'ensemble du contenu de https://nicegui.io est implémenté avec NiceGUI lui-même et peut être démarré localement avec docker run -p 8080:8080 zauberzeug/nicegui
ou en exécutant main.py
à partir de ce référentiel.
Vous pouvez également consulter nos exemples détaillés de ce que vous pouvez faire avec NiceGUI. Dans notre wiki, nous avons une liste d'excellents projets NiceGUI de la communauté, une section avec des didacticiels, une liste croissante de FAQ et quelques stratégies d'utilisation de ChatGPT/LLM pour obtenir de l'aide sur NiceGUI.
Chez Zauberzeug, nous aimons Streamlit mais trouvons qu'il fait trop de magie en matière de gestion de l'État. À la recherche d'une bibliothèque alternative intéressante pour écrire des interfaces utilisateur graphiques simples en Python, nous avons découvert JustPy. Même si l'approche nous a plu, elle est trop "HTML de bas niveau" pour notre usage quotidien. Mais cela nous a inspiré à utiliser Vue et Quasar pour le frontend.
Nous nous sommes appuyés sur FastAPI, lui-même basé sur le framework ASGI Starlette et le serveur Web ASGI Uvicorn en raison de leurs excellentes performances et de leur facilité d'utilisation.
La maintenance de ce projet est rendue possible par tous les contributeurs et sponsors. Si vous souhaitez soutenir ce projet et faire apparaître votre avatar ou le logo de votre entreprise ci-dessous, merci de nous parrainer. ?
Envisagez vous-même cette forme de contribution à faible barrière. Votre soutien est très apprécié.
Merci de votre intérêt à contribuer à NiceGUI ! Nous sommes ravis de vous compter parmi nous et apprécions vos efforts pour rendre ce projet encore meilleur.
En tant que projet open source en pleine croissance, nous comprenons qu'il faut un effort communautaire pour atteindre nos objectifs. C'est pourquoi nous acceptons toutes sortes de contributions, quelle que soit leur taille. Qu'il s'agisse d'ajouter de nouvelles fonctionnalités, de corriger des bugs, d'améliorer la documentation ou de suggérer de nouvelles idées, nous pensons que chaque contribution compte et ajoute de la valeur à notre projet.
Nous avons fourni un guide détaillé sur la façon de contribuer à NiceGUI dans notre fichier CONTRIBUTING.md. Nous vous encourageons à le lire attentivement avant d'apporter toute contribution afin de vous assurer que votre travail est conforme aux objectifs et aux normes du projet.
Si vous avez des questions ou avez besoin d'aide, n'hésitez pas à nous contacter. Nous sommes toujours là pour vous soutenir et vous guider tout au long du processus de contribution.
Voir DEPENDENCIES.md pour une liste des frameworks Web dont dépend NiceGUI.