Skip to main content

Lightweight And Full Featured Browser Based UI / GUI (Graphical User Interface Library)

Project description

DicksonUI - The Best GUI Library For Python

Build Python Package

With DicksonUI, you can make Graphical User Interfaces with python with just few lines of code. DicksonUI is super easy to use and handles everything for you. Just write your code easily or import any HTML code.

Overview

The DicksonUI Python GUI Library was written with lightweight use in mind. It provides the following key features

  • lightweight
  • few dependancies (all are designed by me)- but micro version is independant.
  • Cross-Platform(Windows, Linux, Mac)
  • No Runtime Installer(Runtime is Browser)
  • Low Ram Usage(less on your script, all used by browser)
  • full featured(Many features of html,css,js)
  • only python knowladge reqired.(knowladge about web technologies is better)
  • browser based(Any device has a browser installed)
  • powerful(power of bootstrap/AngularJS/React Coming Soon)
  • Extensible(write your own plugin and share)
  • HTML support - not just web pages - with js, css or any library(eg :-bootstap).
  • The most common ui widgets available
  • Events - with wide range of event data(all event is handling in own thread so no errors)
  • never wait - all are thraded

Usage

In the following paragraphs, I am going to describe how you can get and use DicksonUI for your own projects.

Getting it

To download dicksonui, either fork this Github repo or simply use Pypi via pip. DicksonUI is available on python 2 and 3 both. Dosen"t require Additional dependencies

$ pip install dicksonui

If you use easy_install, easy_install dicksonui. If you don't like package managers, just download from Github and unzip and run

$ python setup.py install

Initialize a Window

First, let's create a new Application.

from dicksonui import Application, window
mywindow=window()
document=mywindow.document
App = Application(('',1024))
App.Add(mywindow)
print("Navigate To - "+App.location)

Run!!!

Run your code. For Python 3

python3 myscript.py

Or, For Python 2

python myscript.py

This will print a link http://localhost:<port>

Run your favorite browser

chromium-browser

And then navigate to above link. 😥😥😥 Nothing!!!but a blank page.

Add items to form

Okay, now that we will learn about Controls

from dicksonui import Application, window
mywindow=window()
document=mywindow.document
App = Application(('',1024))
App.Add(mywindow)
heading=document.createElement('h1')
heading.innerHTML='Hello World!'
document.body.appendChild(heading)
print("Navigate To - "+App.location)

Run it View wiki for more info

alternatives?

-RemI, which has exactly the same idea (build a GUI in Python, run it in a browser). Definitely worth a look.It is little heavy and use websockets. So it cannot run on older browsers. we used both websockets and long polling -tkinter (standard library)

Advantages: it's well-known. Lots of people have written tutorials and documentation for it.

Disadvantages: it feels like a wrapper around Tk, because it is. This gives good performance and detailed control, but writing it feels unintuitive (to me). it isnt based on browsers and have limited features.

-flexx is very large and had more dependencies, it use tornado server. but we use our own library.limited features! and you can easily mix server-side and client-side

-eel is an alternative for Electron but it is based on bottle server. and it is not a pythonic way.

##Ok until next time, Bye!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

DicksonUI-2.0.2.tar.gz (10.7 kB view details)

Uploaded Source

Built Distributions

DicksonUI-2.0.2-py3.7.egg (20.3 kB view details)

Uploaded Source

DicksonUI-2.0.2-py3-none-any.whl (12.9 kB view details)

Uploaded Python 3

DicksonUI-2.0.2-py2.7.egg (20.0 kB view details)

Uploaded Source

DicksonUI-2.0.2-py2-none-any.whl (12.9 kB view details)

Uploaded Python 2

File details

Details for the file DicksonUI-2.0.2.tar.gz.

File metadata

  • Download URL: DicksonUI-2.0.2.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/2.7.16

File hashes

Hashes for DicksonUI-2.0.2.tar.gz
Algorithm Hash digest
SHA256 8881e70987b9962de314568cbb5272c0ad87f4144c58cc919f946c6a21161691
MD5 1c418fe12ea5148745fb3fb414b540c0
BLAKE2b-256 322ce27f729134d575403a3a2fc53d40e30d38c8863f6319907a7c78a6ea2ee9

See more details on using hashes here.

File details

Details for the file DicksonUI-2.0.2-py3.7.egg.

File metadata

  • Download URL: DicksonUI-2.0.2-py3.7.egg
  • Upload date:
  • Size: 20.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/2.7.16

File hashes

Hashes for DicksonUI-2.0.2-py3.7.egg
Algorithm Hash digest
SHA256 e73ac5c806759c7a15eff3cf8e2073521f3215f95b067a7f84856969fe6274cc
MD5 c8ae1606ccbf43c878bf4b8e61e9ec38
BLAKE2b-256 7a5675d007367c09069c6bf3a7d2c819fcbcdcffa30c1f930bcab6bb1649681a

See more details on using hashes here.

File details

Details for the file DicksonUI-2.0.2-py3-none-any.whl.

File metadata

  • Download URL: DicksonUI-2.0.2-py3-none-any.whl
  • Upload date:
  • Size: 12.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/2.7.16

File hashes

Hashes for DicksonUI-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c42d957467b9d85ac190d2059cc9648e6f2d376d6ead6efc78ec554ffdb38a1a
MD5 352f5c015d4598edf6084d69fba72b22
BLAKE2b-256 3c4fa6c8e2df394fa604a9926713775314833ea025382e4fe30f456fa355f2c6

See more details on using hashes here.

File details

Details for the file DicksonUI-2.0.2-py2.7.egg.

File metadata

  • Download URL: DicksonUI-2.0.2-py2.7.egg
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/2.7.16

File hashes

Hashes for DicksonUI-2.0.2-py2.7.egg
Algorithm Hash digest
SHA256 c7e482bfc7caa4ccf3d12f62f924fca79c032536e8978aa4a10cb24127083ab9
MD5 822ad513a9764e4fb5610286af446cb3
BLAKE2b-256 93895b5580cc03c789df1d74a4096a4807fb7d667864af49450fccf9d897405a

See more details on using hashes here.

File details

Details for the file DicksonUI-2.0.2-py2-none-any.whl.

File metadata

  • Download URL: DicksonUI-2.0.2-py2-none-any.whl
  • Upload date:
  • Size: 12.9 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/2.7.16

File hashes

Hashes for DicksonUI-2.0.2-py2-none-any.whl
Algorithm Hash digest
SHA256 6cccdb50d124eef2fb7615fd776638db2da499744143205ce0d1c883228a44e8
MD5 ae09a54c12aa779fa368f73a878415a0
BLAKE2b-256 115d86a6001b6ac967388b1ccdfce76a33359eff045f5aa0f85dcf38dea60f00

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page