Python-based extendable tool

Sylvia van Os 304234554c Update translations and translatables 2 weeks ago
.github 7ede4c5ae5 Delete old template 4 months ago
docs 72cd81803e Fix license text 5 months ago
pext 304234554c Update translations and translatables 2 weeks ago
pext_dev b0575c5172 Update pext_dev to current standards 5 months ago
screenshots e1f31166f1 Fix docs 11 months ago
test 669305a260 Update modules automatically together with core 3 months ago
travis 7df95289e3 Updater fixes 2 months ago
.appveyor.yml 9f5c837b67 Update to dulwich master (includes patch) 1 month ago
.gitignore d020278113 Ignore compiled QML 9 months ago
.travis.yml f3c976559a Fix typo 3 months ago 049596bd97 Add confirm quit dialog on normal close 2 weeks ago 0fafc15359 Adding CoC (#68) 7 months ago da47228763 Add 1 year ago 490af3c745 Windows! 3 months ago
Info.plist 027d08b9d8 Release Pext v0.19 2 weeks ago
LICENSE a07e0ae0b0 Initial commit 2 years ago
LICENSE-CCBYSA a6ec5ec726 Relicense documentation under CC BY-SA 4.0 8 months ago 103ea71351 Remove landscape 2 weeks ago 49dbc238b2 Release Pext v0.15 3 months ago
logo.png b8244a6dbf Added white stroke to text. 6 months ago
pext.appdata.xml b99099ea5a Rename appdata file to make it noticed by AppImage 5 months ago
pext.desktop 61e1dc4163 AppImage packaging (#31) 5 months ago 3f503b2f78 Switch domain to 1 month ago
tox.ini 864c78edfc Initial implementation of typing output 3 months ago 72f4cd7988 Try to explain Pext better 1 year ago
workflow_graph.png 72f4cd7988 Try to explain Pext better 1 year ago


Lilly the leoger

Windows Build status ReadTheDocs Translation status



Pext stands for Python-based extendable tool. It is built using Python 3 and Qt5 QML and has its behaviour decided by modules. Pext provides a simple window with a search bar, allowing modules to define what data is shown and how it is manipulated.

For example, say you want to use Pext as a password manager. You load in the pass module, and it will show you a list of your passwords which you can filter with the search bar. When you select a password in the list, it will copy the password to your clipboard and Pext will hide itself, waiting for you to ask for it again.

Depending on the module you choose, what entries are shown and what happens when you select an entry changes. So choose the module appropriate for what you want to do, and Pext makes it easy.

Several modules are available for effortless install right within Pext.

Pext running the radiobrowser module with info panel Pext running the openweathermap module with context menu Pext running the emoji module

How it works

Pext is designed to quickly pop up and get out of your way as soon as you're done with something. It is recommended to bind Pext to some global hotkey, or possibly run multiple instances of it with different profiles under multiple hotkeys. Example Pext workflows look as follows:

Pext workflow graph

Simply put:

  • Open (Pext)
  • Search (for something)
  • Select (with Enter)
  • Hide (automatically)


Note: If you run into any issues, please check out the troubleshooting section near the end of this document before reporting a bug.



Pext is available as pext and pext-git. These packages are maintained by Ivan Semkin.

Other distros

We recommend the AppImages under GitHub releases, but you can also install from PyPI.

For the stable version (PyPI):

pip3 install pext --user

For the git version (PyPI):

pip3 install git+ --user

On some systems, you may need to use pip instead of pip3.

Alternatively, you can install Pext from source (not recommended and unsupported)


A macOS .dmg file is available in the releases section on GitHub. If you use Homebrew, you can use brew cask install pext on the command line.

Alternatively, see Installing Pext from source (not recommended and unsupported)


A Windows installer is available in the releases section on GitHub.

Alternatively, see See Installing Pext from source (not recommended and unsupported)


To actually use Pext, you will first have to install one or more modules. Check out the Pext organisation on GitHub or use Module -> Install module -> From online module list in the application for a list of modules.

After installating at least one module, you can load it from the Module -> Load module menu. After that, experiment! Each module is different.

For command line options, use --help.


Entry management

  • Escape: Go one level up
  • Tab: Tab-complete the current input
  • Enter / Left mouse button: Select entry or run command
  • Ctrl+Shift+. / Right mouse button on header: Open state menu
  • Ctrl+. / Right mouse button on any item: Open context menu
  • Ctrl+J / Down arrow: Go one entry down
  • Ctrl+H / Up arrow: Go one entry up
  • Ctrl+F / Page down: Go one page down
  • Ctrl+B / Page up: Go one page up

Tab management

  • Ctrl+T: Open new tab
  • Ctrl+W: Close current tab
  • Ctrl+Tab: Switch to next tab
  • Ctrl+Shift+Tab: Switch to previous tab
  • Alt+<number>: Switch to tab <number>
  • F5: Reload tab, including code changes to the module

Session management

  • Ctrl+Q: Quit


If you need support or just want to chat with our community, we have the following options:

All these channels are linked to each other, so there is no need to worry about missing out.

We can also be reached on Twitter: @PextTool


Pext is licensed under the GNU GPLv3+, with exception of artwork and documentation, which are licensed under the Creative Commons Attribution Share-Alike 4.0 license.

Under artwork and documentation fall:

  • All files in the following directories:
    • docs/
    • pext/images/
    • screenshots/
    • .github/
  • All Markdown files in the root directory.
  • logo.png

When attributing the logo (which was donated by vaeringjar), it should be attributed as Lilly the leoger by White Paper Fox. Alternatively, it may be referred to as the Pext logo. Please link to Pext with or and to White Paper Fox with where possible.