Stellar Testnet
FundStar
Connect crowdfunding campaigns, wallet-signed contributions, and contributor rewards into one Stellar Testnet product.
Full-stack blockchain engineer
System flow
- 01Create a campaign
- 02Simulate & sign
- 03Contribute tokens
- 04Mint STAR rewards
- 05Withdraw a funded campaign
Product & scope
FundStar lets creators define campaign goals and deadlines, contributors fund campaigns, and creators withdraw when the goal is reached. It connects a Next.js interface to Rust contracts on Soroban.
The application is a testnet implementation. Its results are implemented product capabilities, rather than adoption or commercial outcomes.
Contract architecture
The crowdfunding contract stores campaign state and handles contributions and withdrawals. A second contract stores STAR reward balances. Funding invokes the reward contract to mint rewards based on the contribution amount.
Creator and contributor authorization checks live at contract boundaries. Withdrawal requires the stored creator’s authorization and checks the goal and prior withdrawal state. Frontend visibility is not the authorization mechanism.
Wallet & transaction lifecycle
The frontend constructs the invocation, simulates it through Stellar RPC, assembles transaction data, requests a wallet signature, submits the signed transaction, and polls for a final result. Freighter is the primary implemented signing path.
Soroban SDK provides contract interfaces and authorization primitives; Stellar SDK handles transaction construction and RPC; Freighter API supplies wallet integration. The application documents a short-lived session cache with BigInt-safe serialization for contract reads.
Evidence & next steps
The repository includes campaign and reward contracts, Rust tests, frontend integration code, CI configuration, screenshots, and a recorded demo. Its README reports fifteen passing contract tests; the portfolio review inspected source evidence without independently running the suite.
Campaign discovery currently scans sequential IDs, and event history uses a limited lookback. Durable indexing, frontend integration tests, broader wallet support, and review of asset accounting and contract invariants are next steps before considering production use.