Skip to main content

Create native web wrappers or write hybrid Desktop applications on Linux, with Python, JavaScript, HTML, and Blink

Project description

Just Another Desktop Environment Application Kit ( JAK )

Build web wrappers or hybrid web/desktop applications on Linux, using Python/JavaScript/HTML5/CSS3 powered by QTWebengine. Using web technologies we can create beautiful User Interfaces using a diverse amount of available library's and frameworks.

Codacy Badge Build Status PyPI version Gitter chat release License

Packaging status

Getting Started

  • Prerequisites
  • Python >= 3.8
  • PySide2 >= 5.14 or PyQt5 >= 5.13
  • desktop-file-utils, for application.desktop creation: optional
git clone https://github.com/codesardine/Jade-Application-Kit.git

cd Jade-Application-Kit

Install using pip

pip3 install -r requirements.txt

or

pip3 install Jade-Application-Kit

Install manually

~/.virtualenv/python3 setup.py install

or

sudo python3 setup.py install

Install in Manjaro

sudo pacman -S python-jade-application-kit

Environment variables

JAK defaults to using PySide2 to use PyQt5 set this environment variable, this is read before the config file.

export JAK_PREFERRED_BINDING=PyQt5

Config file

Setting bindings via config file, system wide is fetched last.

  • User file location = /username/.config/jak.conf
  • System wide location = /etc/jak.conf

Config file contents.

[bindings]
JAK_PREFERRED_BINDING = PyQt5

Contributing

Please read CONTRIBUTING.md for details on code of conduct, and the process for submitting pull requests.

Using from the command line

With the command line utility you can create a self-contained web wrapper's in a question of seconds.

jak-cli --url https://my-web-app-url  --title Mytitle

Creating Desktop files in the user directory ( ~/.local/share/applications ).

jak-cli --url https://slack.com --title Slack --cde --desc "Collaboration software for connected teams."

More options.

jak-cli --help

Using Python

#!/usr/bin/env python
from JAK.Application import JWebApp

url = "https://my-web-app-url"

webapp = JWebApp(title="Mytitle", online=True, web_contents=url)

webapp.run()

URL Rules:

  • We can match domains by starting letters or using Python regex.
  • Block Rules: blocks any domain in the list.
  • WebBrowserWindow Rules: deny any domain in the list.
  • WebBrowserTab Rules: only allow domains in the list, if empty all are allowed, if they start with https:// they open in a new window.

Looking for wrapper's examples? Check Branches starting with wrapper/.

Api

Versioning

SemVer is used for versioning. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

Acknowledgments

Applications

Wrappers

Missing yours?, let me know.

Known Issues

  • Does not like NVIDIA cards and as such falls back to software rendering, so if you use one of them you have to do without GPU acceleration. Only PCI devices.
  • As of Python 3.8 PySide2 is not compatible = https://github.com/codesardine/Jade-Application-Kit/issues/67, until this is fixed upstream set bindings via environment variable or config file.

License

Jade Application Kit is covered by the GPL license.

Copyright (c) 2015-2019, Vitor Lopes. All rights reserved.

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

Jade-Application-Kit-3.5.6.tar.gz (65.6 kB view details)

Uploaded Source

Built Distribution

Jade_Application_Kit-3.5.6-py3-none-any.whl (33.3 kB view details)

Uploaded Python 3

File details

Details for the file Jade-Application-Kit-3.5.6.tar.gz.

File metadata

  • Download URL: Jade-Application-Kit-3.5.6.tar.gz
  • Upload date:
  • Size: 65.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.8.0

File hashes

Hashes for Jade-Application-Kit-3.5.6.tar.gz
Algorithm Hash digest
SHA256 ea1152159592d4909a749fbf273ad97116ad95ea6a45a434fa8fbec4a6d6c6ea
MD5 61e61314954b5fa36c8a0a7c25138c96
BLAKE2b-256 2e6bca6fa3c23d83e1f73729f87de866621d1f7ce26f786229ab926ac3bd8021

See more details on using hashes here.

File details

Details for the file Jade_Application_Kit-3.5.6-py3-none-any.whl.

File metadata

  • Download URL: Jade_Application_Kit-3.5.6-py3-none-any.whl
  • Upload date:
  • Size: 33.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.8.0

File hashes

Hashes for Jade_Application_Kit-3.5.6-py3-none-any.whl
Algorithm Hash digest
SHA256 284f6c82dbe096f3104e59a6236ab19f91a3057f692e4f2dfa36f5bc84add109
MD5 97aa8f5e64a6f3cd5fbc5774462e139f
BLAKE2b-256 e26f579485df9b8267069ed5bf95d9ee19b689257211c0f056afb259aa77c1b0

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