Skip to content

Add Stellar SEP Support (SEP-10 Web Auth and SEP-24 Hosted Transfers) #19

Description

@Nanle-code

Overview

StarForge is positioned as a full developer toolkit for Stellar, but the Stellar Ecosystem Proposals (SEPs) define the protocols every real Stellar application needs: SEP-10 (Web Authentication), SEP-24 (Hosted Deposits/Withdrawals), SEP-6, SEP-31, SEP-38. None of these are implemented. A developer building a Stellar app with StarForge has no tooling for the most important integration layer.

Resolution

Add a starforge sep command group. Start with the two most universally needed:

SEP-10: Implement starforge sep auth --anchor <domain> --wallet <name> — fetch the challenge transaction from <domain>/.well-known/stellar.tomlWEB_AUTH_ENDPOINT, parse the manage_data operations, verify the transaction meets SEP-10 requirements (correct source, time bounds, correct network passphrase), sign with the local wallet, and submit back to get a JWT. Store the JWT in ~/.starforge/data/sep10_tokens.json keyed by anchor domain.

SEP-24: Implement starforge sep deposit --anchor <domain> --asset USDC --amount 100 --wallet alice — initiate the interactive deposit flow by calling the anchor's /transactions/deposit/interactive endpoint with SEP-10 auth, follow the returned url in the system browser (open/xdg-open), and poll the transaction status endpoint until completion.

Both SEPs require parsing stellar.toml — implement a proper StellarToml parser as a shared utility in src/utils/.

Metadata

Metadata

Assignees

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial CampaignCampaign: Official Campaign

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions