{"id":29197431,"url":"https://github.com/flow-launcher/flow.launcher.jsonrpc.python","last_synced_at":"2025-07-02T07:09:08.446Z","repository":{"id":41813916,"uuid":"296843767","full_name":"Flow-Launcher/Flow.Launcher.JsonRPC.Python","owner":"Flow-Launcher","description":"Flow Launcher's Python support, via JSON RPC.","archived":false,"fork":false,"pushed_at":"2025-02-12T09:59:59.000Z","size":120,"stargazers_count":9,"open_issues_count":3,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-07-02T07:09:02.397Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://pypi.org/project/flowlauncher","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Flow-Launcher.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"flow-launcher","open_collective":"flow-launcher"}},"created_at":"2020-09-19T10:32:14.000Z","updated_at":"2025-02-12T10:00:01.000Z","dependencies_parsed_at":"2023-12-31T03:19:25.481Z","dependency_job_id":"30b5b7d7-0522-4552-bf1f-045de50720e6","html_url":"https://github.com/Flow-Launcher/Flow.Launcher.JsonRPC.Python","commit_stats":{"total_commits":62,"total_committers":7,"mean_commits":8.857142857142858,"dds":0.6129032258064516,"last_synced_commit":"cc031a3d81f0f5d600f6b46895cb5dfd39c0ba1d"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/Flow-Launcher/Flow.Launcher.JsonRPC.Python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Flow-Launcher%2FFlow.Launcher.JsonRPC.Python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Flow-Launcher%2FFlow.Launcher.JsonRPC.Python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Flow-Launcher%2FFlow.Launcher.JsonRPC.Python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Flow-Launcher%2FFlow.Launcher.JsonRPC.Python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Flow-Launcher","download_url":"https://codeload.github.com/Flow-Launcher/Flow.Launcher.JsonRPC.Python/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Flow-Launcher%2FFlow.Launcher.JsonRPC.Python/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263091080,"owners_count":23412358,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-07-02T07:09:02.139Z","updated_at":"2025-07-02T07:09:08.437Z","avatar_url":"https://github.com/Flow-Launcher.png","language":"Python","funding_links":["https://github.com/sponsors/flow-launcher","https://opencollective.com/flow-launcher"],"categories":[],"sub_categories":[],"readme":"# Flow.Launcher.JsonRPC.Python\n\n[![](https://img.shields.io/pypi/v/flowlauncher.svg?style=for-the-badge)](https://pypi.org/project/flowlauncher/)\n[![PyPI pyversions](https://img.shields.io/pypi/pyversions/flowlauncher?style=for-the-badge)](https://pypi.org/project/flowlauncher/)\n\nFlow Launcher supports Python by JsonRPC.\n\n## JSON-RPC\n\n\u003e [JSON-RPC](https://en.wikipedia.org/wiki/JSON-RPC) is a remote procedure call protocol encoded in JSON.\n\nIn Flow Launcher, we use JSON-RPC as a **local** procedure call protocol to bind Flow and other program languages.\n\nSo we need to build a **common API** between Flow and Plugin.\n\n![JsonRPC](./assets/jsonrpc.png)\n\n### Example\n\n- `--\u003e` denotes data sent to FLow.\n- `\u003c--` denotes data coming from Flow.\n\n```json\n--\u003e {\"method\": \"query\", \"parameters\": [\"\"]}\n\u003c-- {\"Title\": \"title\", \"SubTitle\": \"sub title\", \"IconPath\": \"favicon.ico\"}\n```\n\n\u003c!-- TODO: try to add some other examples --\u003e\n\n## Installation\n\n### Using `pip`\n\n``` bash\n\u003e\u003e\u003e pip install flowlauncher\n```\n\n### Using `pip` + `git`\n\n``` bash\n\u003e\u003e\u003e pip install git+https://github.com/Flow-Launcher/Flow.Launcher.JsonRPC.Python.git\n```\n\n### Using `git`\n\n``` bash\n\u003e\u003e\u003e git clone https://github.com/Flow-Launcher/Flow.Launcher.JsonRPC.Python.git\n\u003e\u003e\u003e cd Flow.Launcher.JsonRPC.Python\n\u003e\u003e\u003e python setup.py install\n```\n\n\u003c!-- TODO: update Example Plugin (HellowWorldPython) for this plugin --\u003e\n\n### License\n\nThis project is under the [MIT](./LICENSE) license.\n\nSome of the orignal codes from [JsonRPC/wox.py](https://github.com/Wox-launcher/Wox/blob/master/JsonRPC/wox.py) which is under the [MIT](https://github.com/Wox-launcher/Wox/blob/master/LICENSE) license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflow-launcher%2Fflow.launcher.jsonrpc.python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflow-launcher%2Fflow.launcher.jsonrpc.python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflow-launcher%2Fflow.launcher.jsonrpc.python/lists"}