Skip to content

good-first-capability: Stellar address validator (GET /utils/validate) #111

Description

@rahulsainlll

What: validate a Stellar address (G/M) with no network call. Pure compute, the simplest possible first contribution.

Route: GET /utils/validate?address=G…
Sample response: { "address": "G…", "valid": true, "type": "ed25519_public_key" }
Upstream: none, strkey checksum / regex. No key, no network.
New folder: src/capabilities/validate/.

How to build

Copy apps/capabilities/src/capabilities/stellar/ to apps/capabilities/src/capabilities/<name>/ and adapt:

  • routes.ts — the Hono route(s) above
  • manifest.ts — the marketplace manifest (name, operations with sampleRequest/sampleResponse, price: "0")
  • index.tsexport const capability = { routes, manifest }
  • a helper file for any fetch logic

The registry picks it up automatically, no other file to edit.

pnpm --filter capabilities typecheck
pnpm --filter capabilities dev   # then curl the route on localhost:3004

Acceptance

  • New folder under src/capabilities/, following the README rules (read-only, no secrets, clean JSON, price: "0").
  • manifest.ts has a sampleRequest + sampleResponse per operation.
  • typecheck passes and the route returns the documented shape locally.

See apps/capabilities/README.md → "How to add one". Depends on #101 (folder structure) landing first.

Metadata

Metadata

Assignees

Labels

good-first-capabilityAdd a first-party capability (copy the stellar/ folder)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions