paritytech / paritytech/host-rust-core

Build tooling around the Pocket modality

Open
#852 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Swift
Stars
10
Forks
3
Avg merge
1d 10h
Merged PRs (30d)
148

Description

Make a Pocket card something any product team can build, preview, deploy and test on their own without reading Kotlin, touching the Android repo, or redeploying between visual changes.

Done when a product engineer, from their own repo and a Firebase debug build, can:

  1. Add a worker to a product and declare a card on it
  2. Change how the card looks and see it on a device in under a minute, no deploy
  3. Deploy the worker, and have a malformed card fail at deploy time rather than silently on device
  4. Add the card with a deeplink and watch the live face redraw, with button presses reaching the worker

Background and reasoning: docs/pocket-card-developer-experience.md and docs/pocket-card-dev-loop.md
in polkadot-android-community.


polkadot-android-community
  • Let the debug worker override carry a Pocket card (id, title, face URL beside the worker URL)
  • On-device face preview: draw a face from a URL through the production decoder and renderer
  • Browser-reachable loop for testers with no adb (today the fast loop needs a cable)
product-sdk
  • A worker entry point — a blessed way to write the bundle the manifest points at
  • A typed face builder producing RendererNode, so enum names and node shapes are checked at compile time
  • validateFace(json) usable in a test and in CI, returning the same verdict the host reaches
  • Handler registration for renderer.onRender on the PocketCard context, plus pocket.listSubscribe / pocket.removeCard wrappers
  • A worked example, and a skill in the repo's Claude Code marketplace
  • A guide: add a worker, declare a card, preview it, deploy it, add it, remove it
bulletin-deploy
  • Validate pocket.cards in the worker manifest: ids screened as the core screens them, unique per worker, non-blank titles
humanity (first customer)
  • Publish a worker on peopl.<tld> with includes.pocket: true and a card with id humanity — the pinned card hands over to it the moment that record exists

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with docs/pocket-card-developer-experience.md and docs/pocket-card-dev-loop.md. Then map the unchecked work across polkadot-android-community, product-sdk, and bulletin-deploy, beginning with the worker entry point and face validation path. Done means the listed product workflow works from a product repository and Firebase debug build, including preview, deploy-time validation, deeplink rendering, and worker button handling.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, firebase, kotlin
Domain
devtools, mobile-dev, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.