Skip to content

[Docs] Add per-contract README usage guides #16

@Jayrodri088

Description

@Jayrodri088

Complexity / points: Medium (150 points) - maintainer label: points-150-medium

PR must include:

  • Closes #16 in the PR description
  • Tests added or updated where behavior changes
  • Docs updated if public API, lifecycle, or deploy steps change
  • No unwrap() in production Soroban contract paths (project convention)
  • cargo test passes locally; match CI (cargo fmt, cargo clippy -D warnings) when touching Rust

Problem

The repo has one root Readme.md, but there are no contract-specific README files under contracts/invoice-escrow, contracts/invoice-token, or contracts/payment-distributor.

That makes it harder for contributors/integrators to:

  • find the contractΓò¼├┤Γö£ΓòóΓö¼├║╬ô├╢┬ú╬ô├╢├⌐╬ô├▓┬╝Γö£Γöñ╬ô├╢┬ú╬ô├«├ë╬ô├╢┬╝╬ô├▓┬Ñ╬ô├▓┬╝Γö£Γöñ╬ô├╢┬úΓö£ΓûÆ╬ô├╢┬ú╬ô├╢├⌐s purpose
  • find example call flows
  • understand each contractΓò¼├┤Γö£ΓòóΓö¼├║╬ô├╢┬ú╬ô├╢├⌐╬ô├▓┬╝Γö£Γöñ╬ô├╢┬ú╬ô├«├ë╬ô├╢┬╝╬ô├▓┬Ñ╬ô├▓┬╝Γö£Γöñ╬ô├╢┬úΓö£ΓûÆ╬ô├╢┬ú╬ô├╢├⌐s inputs, auth expectations, and error cases

Proposed change

Add per-contract README files with a small, consistent structure.

Acceptance criteria

  • Create contracts/invoice-escrow/README.md
  • Create contracts/invoice-token/README.md
  • Create contracts/payment-distributor/README.md (documenting current stub status if still unimplemented)
  • Each README includes:
    • purpose + high-level flow
    • how to initialize/configure the contract
    • example call sequence (aligned with Soroban CLI commands in root README)
    • link to docs/API.md (once created)
  • README examples do not include real secrets (use placeholders)

Dependencies

Recommended after [Docs] Add missing docs/API.md for contract public methods so the per-contract docs can link to a single source of truth.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions