CLI and library for Bloret Launcher API and plugin development
Project description
BLDEV (Bloret Launcher Developer CLI)
CLI and Python library for Bloret Launcher API access and plugin development.
Install the package as BLDEV, run the command as BLDEV, and continue importing the Python package as BLAPI for compatibility.
BLCLI and BLAPI remain available as command aliases.
Installation
pip install BLDEV
Or install from source:
pip install .
Usage
As a Library
from BLAPI import Client, request_api, LauncherClient
# Using the Client class
client = Client(base_url="https://api.bloret.com", token="your-token")
response = client.request("GET", "/v1/games")
# Using the convenience function
response = request_api("GET", "/v1/games", token="your-token")
As a Command-Line Tool
After installation, use the BLDEV command:
# Make a GET request
BLDEV get /v1/games
# Make a POST request with data
BLDEV post /v1/games --data '{"name": "New Game"}'
# Specify a custom base URL and token
BLDEV --base-url https://api.bloret.com --token your-token get /v1/games
# Save output to a file
BLDEV get /v1/games --output games.json
Compatibility aliases:
BLCLI --help
BLAPI --help
Commands
get- Make a GET request to an endpointpost- Make a POST request to an endpointput- Make a PUT request to an endpointdelete- Make a DELETE request to an endpointplugin- Scaffold, validate, inspect, build, install, and develop launcher plugins
Plugin Development
BLDEV includes an offline plugin SDK and CLI for Bloret Launcher plugins.
# Create a plugin project
BLDEV plugin init my-plugin --id com.example.my-plugin --template python --non-interactive
# Validate the project (offline)
BLDEV plugin validate my-plugin --strict
# Inspect normalized manifest and high-risk permissions
BLDEV plugin inspect my-plugin
# Build a reproducible ZIP with plugin.json at the archive root
BLDEV plugin build my-plugin -o dist
# Install into the local Bloret Launcher data directory
BLDEV plugin install my-plugin
# or:
BLDEV plugin install my-plugin --data-dir /path/to/Bloret-Launcher-data --force
# Validate, install, and query a running launcher (OAuth only needed for runtime status)
BLDEV plugin dev my-plugin --oauth-name YOUR_APP --oauth-secret YOUR_SECRET
Supported templates:
python- Python extension plugin withregister(api)declarative/theme- theme-only declarative pluginnav- QML navigation page pluginagent- Bloriko Agent tool/prompt starter
As a library:
from BLAPI.plugin import (
scaffold_plugin,
validate_project,
inspect_project,
build_plugin,
install_plugin,
find_launcher_data_dir,
)
from BLAPI import LauncherClient
project = scaffold_plugin("my-plugin", "com.example.my-plugin", template="python")
diagnostics = validate_project(project)
archive = build_plugin(project, "dist/my-plugin.zip")
install_plugin(project, find_launcher_data_dir() / "Plugin", force=True)
client = LauncherClient(
"http://localhost:25252",
oauth_name="YOUR_APP",
oauth_secret="YOUR_SECRET",
)
print(client.plugin_info("com.example.my-plugin"))
Notes:
plugin init/validate/inspect/build/installare offline and do not require OAuth setup.- Python plugins run in-process with the launcher; permissions are capability checks, not a sandbox.
- ZIP archives must place
plugin.jsonat the root (BLDEVplugin builddoes this automatically).
Options
--base-url- Base URL for the API (default: https://api.bloret.com)--token- Authorization token for API requests--output,-o- Output file (default: stdout)
Development
To install the package in development mode:
pip install -e .
To run tests:
pytest
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bldev-0.2.0.tar.gz.
File metadata
- Download URL: bldev-0.2.0.tar.gz
- Upload date:
- Size: 45.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8468e7b760a4aad72ac1bcb398356d0c0018411d73b6ee8b1e3c0d3860ae3fd3
|
|
| MD5 |
6892ccfaa8436bf6893dc5a5c7e8c124
|
|
| BLAKE2b-256 |
e0c4beaa029b7780f165e9ba8e55222f8a2ea3a50a6de704ece06175b07c88b4
|
Provenance
The following attestation bundles were made for bldev-0.2.0.tar.gz:
Publisher:
release.yml on BloretCrew/Bloret-Launcher-API-Tool
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bldev-0.2.0.tar.gz -
Subject digest:
8468e7b760a4aad72ac1bcb398356d0c0018411d73b6ee8b1e3c0d3860ae3fd3 - Sigstore transparency entry: 2158798806
- Sigstore integration time:
-
Permalink:
BloretCrew/Bloret-Launcher-API-Tool@3d839f52b0a7c1c7a310cb0b2aa56351f0da4a5d -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/BloretCrew
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@3d839f52b0a7c1c7a310cb0b2aa56351f0da4a5d -
Trigger Event:
release
-
Statement type:
File details
Details for the file bldev-0.2.0-py3-none-any.whl.
File metadata
- Download URL: bldev-0.2.0-py3-none-any.whl
- Upload date:
- Size: 48.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce9a14236562b805bc3757b4e3d2585be742b1f22cdf6e24207510861fb7fae1
|
|
| MD5 |
c9720c5c7bc166e09dcab9574bfadeb9
|
|
| BLAKE2b-256 |
174e370fcc892d41f06b0e032e676e60158993ff286719061d7067a5a951cf0a
|
Provenance
The following attestation bundles were made for bldev-0.2.0-py3-none-any.whl:
Publisher:
release.yml on BloretCrew/Bloret-Launcher-API-Tool
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
bldev-0.2.0-py3-none-any.whl -
Subject digest:
ce9a14236562b805bc3757b4e3d2585be742b1f22cdf6e24207510861fb7fae1 - Sigstore transparency entry: 2158798827
- Sigstore integration time:
-
Permalink:
BloretCrew/Bloret-Launcher-API-Tool@3d839f52b0a7c1c7a310cb0b2aa56351f0da4a5d -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/BloretCrew
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@3d839f52b0a7c1c7a310cb0b2aa56351f0da4a5d -
Trigger Event:
release
-
Statement type: