- S single page
- W web
- A application
- B browser
Usage: $> python3 swab.py {directory} {URL}
example: python3 swab.py my_cool_web_app https://example.com/hello
directory is a unique name for this web-app's data store (location of web objects)
URL is the url for your web app
On your Linux system you will need to have:
sudo apt update
sudo apt install python3 python3-gi gir1.2-gtk-3.0 gir1.2-webkit2-4.1
and adjust for your linux package manager
For a virtual Env you'll need to create it with system site packages enabled:
python3 -m venv --system-site-packages my_env
source my_env/bin/activate
This application is similar to "installing" a webpage from a Chrome derivitive browser.
I do not think Firefox offers this by default, like Chrome and Brave.
SWAB is cleaner looking than the Google and Brave windows.
SWAP does not create a nice icon the way the other do. You have to do that your self (good feature!) Fortunatley, most Linux distros come with hefty icon collections.
Example of a typical Linux desktop application launcher file:
[Desktop Entry]
Version=1.0
Type=Application
Name=webapps - SWAB
Comment=Web Apps Menu
Exec=python3 swab.py webapps "https://michaelleidel.net/wapps"
Icon=/home/user/Pictures/icons/menu.png
Path=/home/user/apps/python/projects/swab
Terminal=false
StartupNotify=true
The directory or "app name" you supply on the command line must be unique so it does not conflict
with any other web apps you create with SWAB.
The web objects for each web app are stored under that directory name like this:
~/.local/share/my-webapps/{directory}
- Ctrl-F Open Find
- Esc Close Find
- F3 Find Next
- Shift-F3 Find Previous
- Ctrl-Q Close Application
Simple context menu
So, incase you're not using a Chromium based browser and want to have web apps, you can use this, or use it anyway. They won't disapear when you change browsers! SWAB also remembers the windows geometry.