Run any website as standalone online desktop application
MIT License
Run any website as standalone desktop application
Small Python script opening any web page in dedicated window, using embedded QT WebEngine. There are no visible browser's UI etc., so the that can be useful to turn any website into standalone desktop application. This is useful if you, as me, would like to have a website run as standalone app, independently of your main browser which can be beneficial as it gives you separate entry in window manager or task switcher etc.
IMPORTANT: This tool is NOT turning websites into OFFLINE apps! It's about separating each of your key websites i.e. from each other, or gazzilions of your browser's tabs. But you still MUST be connected to the Internet for the apps (websites) to work as previously.
Use pip
to install the script system-wide:
$ pip install website-as-app
If you want to use virtual environment (which is recommended):
$ python -m venv venv
$ source venv/bin/activate
$ pip install website-as-app
Once app is running, please use --help
to see all available options, as i.e. custom icon,
window title etc.
When app is installed system-wide, you can run it from anywhere:
$ webapp "https://github.com"
If you are using virtual environment, there's handy Bash script in extras/ directory
which takes care of initializing virtual environment and running the app using that environment.
You simply use extras/webapp.sh
script instead of webapp
directly:
$ extras/webapp.sh "https://github.com"
Available options:
webapp -h
usage: webapp [--profile PROFILE] [--name NAME] [--icon ICON] [--zoom ZOOM] [--no-tray] url
Open any website in standalone window (like it's an app)
positional arguments:
url The URL to open
options:
--profile PROFILE Profile name (for cookies isolation etc). Default: "default"
--name NAME, -n NAME Application name (shown as window title)
--geometry GEOMETRY Initial window geometry (in format "WIDTHxHEIGHT+X+Y")
--icon ICON, -i ICON Full path to image file to be used as app icon
--zoom ZOOM, -z ZOOM Initial WebBrowserView zoom factor. Default: 1.0
--no-tray Disables system tray support (closing window terminates app)
The most important option is --profile
which allows you to isolate cookies and app settings
per instance. Any instance using the same profile will have access to the same cookies and
settings. This is useful if you want to run multiple instances of the same app, but with
different accounts. By default default
profile is used and it's recommended to use different
profile per each app instance.
QWebBrowerView
you will not be able