Skip to main content

Tests Workflow Status Docs Workflow Status Release Workflow Status pypi PyPI - Python Version GitHub License buymeacoffee

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]

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.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyflowlauncher 1.2.2
File Size Uploaded
pyflowlauncher-1.2.2.tar.gz 20.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyflowlauncher 1.2.2
File Interpreter ABI Platform
pyflowlauncher-1.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 45.2 kB

Release files / pyflowlauncher-1.2.2.tar.gz

Download URL pyflowlauncher-1.2.2.tar.gz
Size 20.1 kB
Tags Source
SHA-256 checksum
How to use checksums
ae5edaf8ff86c02e40ec486d75576afc575db719e7f2ac80455f9f2b22731409
BLAKE2b-256 checksum
How to use checksums
dd52222d1d4b73416d4f3ffa7a55380ef3dd6893eb4e466e5ee3e188d541ad64
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 Oct 9, 2026.

Transparency log

Release files / pyflowlauncher-1.2.2-py3-none-any.whl

Download URL pyflowlauncher-1.2.2-py3-none-any.whl
Size 25.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
190c3331f8e44e49ed726207272c128b65bf1d0cdbcc969a02996ee3da08dd3b
BLAKE2b-256 checksum
How to use checksums
9c3588e56d6b0df37563027dcd41689ec540fbca4b5d48244cde71a6f386683d
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 Oct 9, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page