@pluxel/market
v0.1.0
Published
Developer toolkit for the Pluxel marketplace ecosystem. The package bundles two things:
Downloads
40
Readme
@pluxel/market
Developer toolkit for the Pluxel marketplace ecosystem. The package bundles two things:
- GitHub Actions under
actions/for publishing plugins and validating manifests. - Hono RPC helpers under
src/so dashboards or CLIs can talk to the worker with end-to-end typing.
RPC client
import { createMarketRpcClient } from "@pluxel/market";
const client = createMarketRpcClient({
baseUrl: "https://worker.example.com",
headers: async () => ({
Authorization: `Bearer ${await getToken()}`,
}),
});
// Health check
await client.health();
// Get the latest snapshot (flat package list + tags)
const snapshot = await client.snapshots.current();
// Get summary statistics (version, counts)
const stats = await client.snapshots.stats();
// Publish a package
await client.webhook.submit(
{ packageName: "pluxel-plugin-example", version: "1.0.0" },
githubOidcToken
);createMarketRpcClient accepts either a base URL string (legacy signature) or a full options object with:
headers/init/fetchhooks for SSR, custom auth, or alternative runtimesroutesoverrides when the worker is reverse-proxied.request(path, init)escape hatch for custom endpoints
renderSnapshotDashboard still mounts the full React dashboard, but it now accepts a snapshotSource option so you can hydrate from any loader (REST, GraphQL, gRPC) without pulling in the RPC client. Pass client or snapshotSource, plus the existing knobs:
appearance("light"/"dark")- cached embeds via
initialSnapshot+hydrateOnInit={false} resolveMetadata+tagDictionaryfor repo URLs, tag IDs, highlights, version history, etc.enableInstallQueue+onInstallSubmitto surface batch installnamePrefixesToTrim(e.g.["pluxel-plugin-"]) to hide redundant prefixes
Both the component and the renderer share the same props (DashboardOptions / SnapshotDashboardProps), so they can be reused in your own React tree without touching the DOM helper.
Building
bun run --filter @pluxel/market build