pyFlowLauncher
pyFlowLauncher is an API that allows you to quickly create plugins for Flow Launcher!
Installation
Install via pip:
python -m pip install pyflowlauncher[all]
[!IMPORTANT] Please use the
[all]flag in order to support Python versions older then3.11.
Usage
Basic plugin
A basic plugin using a function as the query method.
from pyflowlauncher import Plugin, Result
plugin = Plugin()
@plugin.on_method
def query(query: str):
yield Result(
title="This is a title!",
subtitle="This is the subtitle!",
icon="icon.png"
)
plugin.run()
Methods decorated with @plugin.on_method can yield one or more Result objects, return a list of Result objects, or return a single Result — the framework normalizes all forms into the correct response automatically.
Advanced plugin
A more advanced usage using a Method class as the query method.
from pyflowlauncher import Plugin, Result, Method
from .models.json_rpc import JsonRPCResponse
plugin = Plugin()
class Query(Method):
def __call__(self, query: str) -> JsonRPCResponse:
r = Result(
title="This is a title!",
subtitle="This is the subtitle!"
)
self.add_result(r)
return self.return_results()
plugin.add_method(Query())
plugin.run()
Context menus
Plugin ships with a built-in context_menu method: put Result objects in a
result's context_data and they become that result's context menu — no handler
code required.
from pyflowlauncher import Plugin, Result
plugin = Plugin()
@plugin.on_method
def query(query: str):
yield Result(
title="This is a title!",
subtitle="Right-click me for a context menu.",
context_data=[
Result(title="This is a context menu item!"),
Result(title="So is this!"),
],
)
plugin.run()
Menu items are full Result objects, so they can carry actions via
add_action() just like query results.
If you need more control (for example, building the menu lazily when it is
opened), register your own context_menu — it replaces the built-in one:
@plugin.on_method
def context_menu(context_data):
yield Result(title=f"Menu for {context_data[0]}")
Metadata
Release files for pyflowlauncher 1.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyflowlauncher-1.2.0.tar.gz | 19.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyflowlauncher-1.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 44.5 kB
Release files / pyflowlauncher-1.2.0.tar.gz
| Download URL | pyflowlauncher-1.2.0.tar.gz |
|---|---|
| Size | 19.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fd178b029c0658a59db36669e7d8ecfc3b9e75b318fb637962cf131bcc403a29
|
|
BLAKE2b-256 checksum How to use checksums |
a1407884b2535bdea39250ccd59f7e905926ef87b0a209f7d4ec9fa9f2f87c5f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 31, 2026.
Transparency logRelease files / pyflowlauncher-1.2.0-py3-none-any.whl
| Download URL | pyflowlauncher-1.2.0-py3-none-any.whl |
|---|---|
| Size | 24.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
642fbe4a9db768ff523c9262870028973e5c485c0049f172aa1030514f2becc8
|
|
BLAKE2b-256 checksum How to use checksums |
18cac4c11a353e8e01466759e83af847a8052479c1f3f9c3da264ce635e67e50
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 31, 2026.
Transparency log