paritytech / paritytech/host-rust-core

RFC: Favourites API

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

Nobody has claimed this yet.

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

Description

Source PR: #16 · docs/rfcs/0013-favourites-api.md · @filvecchiato

Description

A Favourites trait exposes the host's bookmarked-product catalogue: subscribe streams the list, add upserts an entry, forget removes one.

Motivation

Hosts already keep this catalogue, but products cannot read it, so Browse can neither show what is already bookmarked nor add to it.

Requirements

  • FavouriteProduct { product_id, source, created_at, updated_at }, where source is Remote or Local.
  • subscribe sends the full list on every change; no pagination.
  • forget reports NotFound; denial and unsupported-host go through CallError.
  • Local to the host instance — no cross-host sync.

Tasks

  • RFC document body
  • Implementation — rust-core
  • Implementation — hosts
    • dotli
    • Desktop
    • iOS
    • Android
    • host-cli

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/rfcs/0013-favourites-api.md and the RFC requirements in this issue, then inspect the rust-core and host implementation areas named in the task list. Done means the RFC body is complete and the Favourites API is implemented across rust-core and the listed dotli, Desktop, iOS, Android, and host-cli hosts.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, ios, rust, swift
Domain
api, backend, cli, desktop, mobile
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.