dapp

Build Stellar dApp frontends with wallet integration, transaction signing, and smart contract invocation.

Updated Jul 26, 2026
One-click install
npx skills add https://github.com/chrissstellee/Movix --skill dapp-chrissstellee
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: dapp
Source: https://github.com/chrissstellee/Movix/tree/main/.agents/skills/dapp
Command: npx skills add https://github.com/chrissstellee/Movix --skill dapp-chrissstellee

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @stellar/stellar-sdk, @stellar/freighter-api, @creit-tech/stellar-wallets-kit, smart-account-kit, @openzeppelin/relayer-plugin-channels.

What problem does it solve? Building a web application that talks to the Stellar blockchain requires coordinating SDK initialization, wallet connections, transaction building, simulation, signing, and submission — each with network-specific configuration and error handling. This Skill provides tested patterns for the entire client-side flow so developers avoid common pitfalls like network passphrase mismatches, unhandled simulation errors, and broken wallet integrations. ## Core Features & Use Cases - Wallet Integration: Connect Freighter directly or support multiple wallets (Freighter, xBull, Lobstr, Hana) through Stellar Wallets Kit, plus passkey-based smart accounts via Smart Account Kit. - Transaction Lifecycle: Build classic payments, invoke Soroban smart contracts via contract.Client, simulate and assemble transactions, then submit through RPC or Horizon with confirmation polling. - React/Next.js Patterns: Ready-made hooks and components (connect button, payment form) with proper client/server separation and a transaction UX checklist. - Use Case: A developer building a Next.js trade escrow app uses this Skill to wire up multi-wallet login, invoke the escrow contract's release function, and display confirmation status to users. ## Quick Start Use the dapp skill to build a Next.js page that connects a Freighter wallet and invokes my Stellar smart contract method.

Frequently Asked Questions about dapp

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I connect a Freighter wallet to a React app?▼

Use the @stellar/freighter-api package with a React hook that calls isConnected, requestAccess, and getAddress to authorize the app and retrieve the user's public key. The signTransaction function then signs XDR transactions with the correct network passphrase.

How to invoke a Stellar smart contract from JavaScript?▼

Use contract.Client from @stellar/stellar-sdk, which reads the contract interface from the network and exposes each method as a typed call returning an AssembledTransaction. Call signAndSend to simulate, sign, submit, and poll for confirmation in one flow.

What is the difference between Stellar Wallets Kit v1 and v2?▼

Wallets Kit v2 moved to JSR under @creit-tech/stellar-wallets-kit, became a static singleton initialized with StellarWalletsKit.init, and replaced openModal callbacks with authModal. v1 used npm under @creit.tech with an instance constructor and allowAllModules.

Does the Stellar JS SDK support Node.js 18?▼

No. As of SDK v16, Node.js 22 is the minimum supported version, and older Node versions produce an EBADENGINE warning. v16 also merged @stellar/stellar-base into @stellar/stellar-sdk and adopted native fetch.

Why does my Soroban transaction fail after submission?▼

Failures usually come from skipped simulation, insufficient fees, or expired transactions. Simulate with rpc.prepareTransaction before signing, then use rpc.pollTransaction after sendTransaction to track status instead of a manual polling loop.

Can users transact on Stellar without holding XLM for fees?▼

Yes, through fee sponsorship using the OpenZeppelin Relayer channels plugin, which wraps transactions in Stellar's native fee bump mechanism. A hosted testnet instance is available, and production deployments can be self-hosted via Docker.